X-Git-Url: http://j8takagi.net/cgi-bin/gitweb.cgi?p=YACASL2.git;a=blobdiff_plain;f=as%2Fyakuwa%2Fbinout.casl;fp=as%2Fyakuwa%2Fbinout.casl;h=0000000000000000000000000000000000000000;hp=2be0a45fc090ee2b7bf5a4bef5a9580e0cd6f2d0;hb=009c6ac7ce3a9eae222d48ae591790be1e70c908;hpb=24247dc8307fec822a07b6f9efa12656e961e417 diff --git a/as/yakuwa/binout.casl b/as/yakuwa/binout.casl deleted file mode 100644 index 2be0a45..0000000 --- a/as/yakuwa/binout.casl +++ /dev/null @@ -1,41 +0,0 @@ -;;; BINOUT: 主プログラムから渡された1語の内容を、 -;;; ゼロ抑制を行った2進表記で出力する -;;; 八鍬幸信『基本情報処理試験 らくらく突破 CASL II』172ページ -BINOUT START - PUSH 0,GR1 ; レジスタの退避 - PUSH 0,GR2 ; ↓ - PUSH 0,GR3 ; ↓ - PUSH 0,GR4 ; ↓ - LAD GR2,0 ; 出力ポインタの初期化 - LAD GR3,15 ; カウンタの初期化 - LD GR4,GR1 ; 全ビット = 0? - JZE OUT1 -LOOP1 JMI ONE ; 先行するビット処理 - LAD GR3,-1,GR3 ; ↓ - SLL GR1,1 ; ↓ - JUMP LOOP1 -LOOP2 JMI ONE ; 符号ビットの判定 -ZERO LAD GR0,48 ; '0'→GR0 - JUMP STORE -ONE LAD GR0,49 ; '1'→GR1 -STORE ST GR0,OBUF,GR2 - LAD GR2,1,GR2 - LAD GR3,-1,GR3 - CPA GR3,NZERO - JMI OUT2 ; 全ビット終了? - SLL GR1,1 - JUMP LOOP2 -OUT1 LAD GR0,48 - ST GR0,OBUF,GR2 - LAD GR2,1,GR2 -OUT2 ST GR2,OLNG - OUT OBUF,OLNG - POP GR4 ; レジスタの復元 - POP GR3 ; ↓ - POP GR2 ; ↓ - POP GR1 ; ↓ - RET -OBUF DS 16 -OLNG DS 1 -NZERO DC 0 - END