最終更新:ID:8Q7HdWr8QA 2015年07月03日(金) 22:39:35履歴
メモリ空間 | 1 |
---|---|
ルーチン番号 | $18 |
FACCに格納されている実数データを被除数、メモリ上に格納されている実数データを除数として除算を行い、その結果をFACCに格納します。
もし除数が0で、除算した場合は「Division By Zero」のエラー処理へ実行が移ります。
単精度または倍精度型実数の区別は、FACCを管理するシステム・レジスタをチェックして行います。
また、もしFACCとメモリ上の変数の形が違っていても、そのまま演算をするので結果は保証されません。
FACC=(FACC)÷(メモリ上のデータ)
もし除数が0で、除算した場合は「Division By Zero」のエラー処理へ実行が移ります。
単精度または倍精度型実数の区別は、FACCを管理するシステム・レジスタをチェックして行います。
また、もしFACCとメモリ上の変数の形が違っていても、そのまま演算をするので結果は保証されません。
FACC=(FACC)÷(メモリ上のデータ)
40を被除数、2を除数として、単精度型実数の除算を行ない、その結果を整数に変換しAccDに格納します。
0 ORG $C000 1 C000 UFDIVT EQU * --SAMPLE OF "UFDIVT" ROUTINE-- 2 C000 20 07 BRA EXEC 3 C002 8200 XDATA FDB $8200 SINGLE PRECISION DATA 4 C004 0000 FDB $0000 ( = 2) 5 C006 0028 FACDT FDB 40 6 C008 0F MAPNO FCB $0F MAP NO.(EXEC) 7 C009 EXEC EQU * --- 40 / 2 --- 8 C009 EC 8CFA LDD FACDT,PCR D:40 9 * - FACC(SINGLE)<--ACCD(VARI.) - 10 C00C 103F SWI2 CALL "UMOVFD" ROUTINE 11 C00E 41 FCB $41 12 C00F 1F FCB $1F 13 C010 E6 8CF5 LDB MAPNO,PCR B:MAP NO 14 C013 30 8CEC LEAX XDATA,PCR X:TOP ADDR OF (X) DATA 15 * --- FACC = FAXX / [X] --- 16 C016 103F SWI2 CALL "UFDIVT" ROUTINE 17 C018 41 FCB $41 18 C019 18 FCB $18 19 * - ACCD(VARI.)<--FACC(SINGLE) - 20 C01A 103F SWI2 CALL "UMOVDF" ROUTINE 21 C01C 41 FCB $41 22 C01D 20 FCB $20 23 C01E 3F SWI 24 END
コメントをかく