最終更新:ID:knJEfduqSQ 2015年08月25日(火) 10:09:02履歴
メモリ空間 | 1 |
---|---|
ルーチン番号 | $21 |
FACCに格納されている実数データを、AccAに格納されたフォーマットに従って文字列に変換し、その結果を数値・文字列変換作業用バッファに格納します。
なお、変換前のFACCの内容は破壊されます。
数値・文字列変換作業用バッファの先頭アドレスは、システム・ワーク・エリア内のPFBUF($F014)に格納されています。
なお、変換前のFACCの内容は破壊されます。
数値・文字列変換作業用バッファの先頭アドレスは、システム・ワーク・エリア内のPFBUF($F014)に格納されています。
- AccA:
書式コード | 編集書式 | 書式例 |
---|---|---|
00 | 書式指定なし | |
80 | "#"と"." | "###.##" |
81 | "^^^^" | "#.###^^^^" |
84 | "##…#-" | "###.##-" |
88 | "+##…#" | "+####" |
8C | "##…#+" | "####.+" |
A0 | "**" | "**###" |
B0 | "**\" | "**\##" |
C0 | "," | "###," |
- AccB:
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 |
整数部桁数 | 小数部桁数 |
# | # | # | . | # | # |
整数部桁数=3 | 小数部桁数=3 |
123456789のASCII文字列を、"123,456,789"の形に変換して、画面に表示します。
0 ORG $C000 1 C000 UFOUT EQU * --SAMPLE OF "UFOUT" ROUTINE-- 2 C000 20 07 BRA EXEC 3 EF9E FILNUM EQU $EF9E FILE NUMBER VEC. 4 F014 PFBUF EQU $F014 5 C002 31 MSG FCC /123456789 --> / 6 C003 32 7 C004 33 8 C005 34 9 C006 35 10 C007 36 11 C008 37 12 C009 38 13 C00A 39 14 C00B 20 15 C00C 2D 16 C00D 2D 17 C00E 3E 18 C00F 20 19 C010 00 FCB $00 MESSAGE END CODE 20 C011 EXEC EQU * --- PROGRAM START --- 21 C011 30 8CEE LEAX MSGA,PCR X:TOP ADDR OF MESSAGE AREA 22 C014 34 10 PSHS X 23 C016 86 0F LDA #$0F A:MAP NO (ON MESSAGE) 24 C018 5F CLRB 25 C019 F7 EF9E STB FILNUM FILNUM: 0=DISPLAY 26 C01C 103F SWI2 CALL "STOUT2" ROUTINE 27 C01E 41 FCB $41 28 C01F 39 FCB $39 29 * ---- BUFFER <--- DATA ---- 30 C020 35 10 PULS X X:TOP ADDR OF MESSAGE 31 C022 10BE F014 LDY PFBUF Y:PFBUF VEC. 32 C026 C6 09 LDB #9 B:LENGTH OF ARGUEMENT 33 C028 34 04 PSHS B 34 C02A A6 80 LOOP LDA ,X+ 35 C02C A7 A0 STA ,Y+ 36 C02E 5A DECB 37 C02F 26 F9 BNE LOOP 38 * ---- FACC <--- DATA(DOUBLE) ---- 39 C031 35 04 PULS B B:LENGTH OF ARGUEMENT 40 C033 103F SWI2 CALL "UVAL1" ROUTINE 41 C035 41 FCB $41 42 C036 21 FCB $21 43 * ---- FACC DATA USING ---- 44 C037 86 C0 LDA #$C0 "#," 45 C039 C6 C0 LDB #$C0 "###,###,###" 46 C03B 103F SWI2 CALL "UFOUT" ROUTINE 47 C03D 41 FCB $41 48 C03E 22 FCB $22 49 * ---- DATA DISPLAY ---- 50 C03F 86 0F LDA #$0F A:MAP NO 52 C041 103F SWI2 CALL "STOUT2" ROUTINE 53 C043 41 FCB $41 54 C044 39 FCB $39 55 C045 39 RTS 56 END
コメントをかく