X-Git-Url: http://j8takagi.net/cgi-bin/gitweb.cgi?p=YACASL2.git;a=blobdiff_plain;f=as%2Fcasl2lib%2Fsrc%2Foutb.casl;fp=as%2Fcasl2lib%2Fsrc%2Foutb.casl;h=0000000000000000000000000000000000000000;hp=7ecb73ece2d3e0e1fe56132c6c8ef5dca9f5e0e4;hb=20134ec3ebf911ef241284c6bd9145c04a75c6ca;hpb=5be8def29beb565c49e7268f71add4a7758ba77b diff --git a/as/casl2lib/src/outb.casl b/as/casl2lib/src/outb.casl deleted file mode 100644 index 7ecb73e..0000000 --- a/as/casl2lib/src/outb.casl +++ /dev/null @@ -1,37 +0,0 @@ -;;; GR1に格納された値を、2進数値として表示 -OUTB START - RPUSH - LD GR2,BIN ; GR2に2進数の「2」を格納。 - XOR GR4,GR4 ; GR4: 2進数値の長さ -STI CPL GR1,GR2 ; ループ先頭。(GR1 < GR2)の場合は、ループ脱出 - JMI STLST ; ↓ - CALL DIVL ; GR1とGR2の、商をGR0、剰余をGR3に格納 - LD GR1,GR3 ; GR1にGR3をコピー - LD GR1,NCHAR,GR1 ; GR1を文字に変換 - ST GR1,STR,GR4 ; (STR + GR4) <- GR1 - LAD GR4,1,GR4 ; GR4 <- GR4 + 1 - LD GR1,GR0 ; GR0をGR1にコピー - JUMP STI ; ループ終端 -STLST LD GR1,NCHAR,GR1 ; GR1を文字に変換 - ST GR1,STR,GR4 ; (STR + GR4) <- GR1 - LAD GR4,1,GR4 ; GR4 <- GR4 + 1 -EMLOOP CPL GR4,DIG ; ループ先頭。(GR4 = DIG)の場合は、ループ脱出 - JZE PRT ; ↓ - LD GR1,NCHAR ; GR1 <- NCHAR:'0' - ST GR1,STR,GR4 ; (STR + GR4) <- GR1 - LAD GR4,1,GR4 ; GR4 <- GR4 + 1 - JUMP EMLOOP ; ループ終端 -PRT ST GR4,LEN ; LEN <- GR4 - LD GR2,LEN ; GR2にLENの値を格納 - LAD GR1,STR ; GR1に文字列のアドレスを格納 - CALL REV ; 文字列を逆順に並べ替え - OUT STR,LEN ; 文字列を出力 - RPOP - RET -STR DS 17 -LEN DS 1 -BIN DC 2 -NCHAR DC '01' -SPC DC ' ' -DIG DC 16 - END