ワンボードマイコンをつくろう!(パソコンの原点はここから始まった)
TK80ソフトコンパチブル!8080、Z80マシン語からBASICまでこれ1台でこなせます
当記事は2009年11月から「TTLでCPUをつくろう!」というタイトルの もとにほとんど毎日連載をしてきたものを再編集したものです。 |
2011.7.1 前へ 次へ 目次へ戻る ホームページトップへ戻る |
☆ND80ZVでBASICを(2) ND80ZVに搭載予定のBASICはハンパではありません。 浮動小数点演算をこなし、さらに三角関数、対数計算までできるのです。 しかも、倍精度での演算もできてしまいます。 |
[第70回]
●指数関数EXP()
前回は常用対数LOG()と自然対数LN()について説明をいたしました。
自然対数ということになりますと、指数関数についてはどうなのか、ということになると思います。
ええ。
もちろん。
指数関数EXP()も使えますですよお。
EXP()はeを底とした指数exの関数です。
なおex以外の指数計算については、[第60回]で累乗(ベキ乗)の機能として説明をいたしました。
たとえば
a=xy
でしたらべき乗の記号 ^ を使って、
A=X^Y
のように使います。
さて、ではEXP()のサンプルプログラムです。
>list 10 FOR A=1 TO 10 20 PRINT A,EXP(A) 30 NEXT A >run 1 2.71828 2 7.38906 3 20.0855 4 54.5982 5 148.413 6 403.429 7 1096.63 8 2980.96 9 8103.09 10 22026.5 |
>15e=exp(a) > 20 PRINT A,E,ln(e) >list 10 FOR A=1 TO 10 15 E=EXP(A) 20 PRINT A,E,LN(E) 30 NEXT A >ren >list 10 FOR A=1 TO 10 20 E=EXP(A) 30 PRINT A,E,LN(E) 40 NEXT A >run 1 2.71828 1 2 7.38906 2 3 20.0855 3 4 54.5982 4 5 148.413 5 6 403.429 6 7 1096.63 7 8 2980.96 8 9 8103.09 9 10 22026.5 10 |
>list 10 FOR A#=1 TO 10 20 E#=EXP(A#) 30 PRINT A#,E#,LN(E#) 40 NEXT A# >run 1 2.718281828459045 0.9999999999999999 2 7.38905609893065 2 3 20.08553692318767 3 4 54.59815003314424 4 5 148.4131591025766 5 6 403.4287934927351 6 7 1096.633158428459 7 8 2980.957987041729 8 9 8103.083927575385 9 10 22026.46579480672 10 |
>list 10 FOR A#=1 TO 10 20 E#=EXP(A#),L#=LN(E#) 30 IF A#=1 L#=L#+0.1D-15 40 PRINT A#,E#,L# 50 NEXT A# >run 1 2.718281828459045 1 2 7.38905609893065 2 3 20.08553692318767 3 4 54.59815003314424 4 5 148.4131591025766 5 6 403.4287934927351 6 7 1096.633158428459 7 8 2980.957987041729 8 9 8103.083927575385 9 10 22026.46579480672 10 |