日立MB-S1に関する情報

メモリ空間1
ルーチン番号$27

機能

単精度型実数のsinの計算を行ないます。

解説

FACCに格納されている単精度型実数値データ(単位はラジアン)の三角関数のsinを計算し、その結果をFACCに、格納します。
また、演算するデータが倍精度型実数の場合は、単精度型実数に変換して計算を行ないます。
整数または文字型の場合もそのまま計算するので、結果は保証されません。
FACC=sin(FACC)

入力情報

  • FACC:引数(単精度型実数、単位はラジアン)

出力情報

  • FACC:sin(単精度型実数)

サンプル・プログラム

内容

10ラジアンのsinを計算し、その結果を画面に表示します。
 0 C000                     ORG  $C000      --SAMPLE OF "SIN" ROUTINE--
 1           C000   SIN     EQU  *
 2 C000   20 09             BRA  EXEC
 3           EF9E   FILNUM  EQU  $EF9E      FILE NUMBER VEC.
 4           F014   PFBUF   EQU  $F014
 5 C002      53     MSG     FCC  /SIN(10)=/
 6 C003      49
 7 C004      4E
 8 C005      28
 9 C006      31
10 C007      30
11 C008      29
12 C009      3D
13 C00A      00             FCB  $00        MESSAGE END CODE
14           C00B   EXEC    EQU  *          --- PROGRAM START ---
15 C00B   30 8CF4           LEAX MSG,PCR    X:TOP ADDR OF MESSAGE
16 C00E   34 10             PSHS X
17 C010   86 0F             LDA  #$0F       A:MAP NO (ON MESSAGE)
18 C012   5F                CLRB
19 C013   F7 EF9E           STB  FILNUM     FILNUM:0 ON DISPLAY
20 C016 103F                SWI2            CALL "STOUT2" ROUTINE
21 C018      41             FCB  $41
22 C019      39             FCB  $39
23                  *                       ---- BUFFER <--- ARGUMENT ---- 
24 C01A   35 10             PULS X          X:TOP ADDR OF MESSAGE
25 C01C   30 04             LEAX 4,X        X=X+4
26 C01E 10BE F014           LDY  PFBUF      Y:PFBUF VEC.
27 C022   C6 02             LDB  #$02       B:LENGTH OF ARGUMENT
28 C024   34 04             PSHS B
29 C026   A6 80     LOOP    LDA  ,X+
30 C028   A7 A0             STA  ,Y+
31 C02A   5A                DECB
32 C02B   26 F9             BNE  LOOP
33                  *                       --- FACC <--- ARGUMENT (DBL) --- 
34 C02D   35 04             PULS B          B:LENGTH OF ARGUMENT
35 C02F 103F                SWI2            CALL "UVAL1" ROUTINE
36 C031      41             FCB  $41
37 C032      21             FCB  $21
38                  *                       ---- FACC DATA CONV. (SINGLE) --- 
39 C033   86 04             LDA  #$04
40 C035 103F                SWI2            CALL "FRCTYP" ROUTINE
41 C037      41             FCB  $41
42 C038      23             FCB  $23
43                  *                       --- SIN(FACC) ---
44 C039 103F                SWI2            CALL "SIN" ROUTINE
45 C03B      41             FCB  $41
46 C03C      27             FCB  $27
47                  *                       --- FACC DATA PRINT USING ---
48 C03D   86 88             LDA  #$88       "#."
49 C03F   C6 06             LDB  #$06       ".######-"
50 C041 103F                SWI2            CALL "UFOUT" ROUTINE
51 C043      41             FCB  $41
52 C044      22             FCB  $22
53                  *                       --- DATA DISPLAY ---
54 C045   86 0F             LDA  #$0F       A:MAP NO
55 C047 103F                SWI2            CALL "STOUT2" ROUTINE
56 C049      41             FCB  $41
57 C04A      39             FCB  $39
58 C04B   39                RTS
59                          END

コメントをかく


「http://」を含む投稿は禁止されています。

利用規約をご確認のうえご記入下さい

どなたでも編集できます