1 / 7

演習問題 3.1 解答

演習問題 3.1 解答. レジスタ GR の内容を (GR) と表せば,以下の通り.. (GR0) = #0000 (GR1) = #0000 (GR1) = #0001 (GR0) = #0001 (GR1) = #0002 (GR0) = #0003 (GR1) = #0003 (GR0) = #0006 (GR1) = #0004 (GR0) = #000A (GR1) = #0005 (GR0) = #000F. (GR1) = #0006 (GR1) = #0015 (GR0) = #0007 (GR1) = #001C

alisa
Télécharger la présentation

演習問題 3.1 解答

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 演習問題 3.1 解答 レジスタ GR の内容を (GR) と表せば,以下の通り. (GR0) = #0000 (GR1) = #0000 (GR1) = #0001 (GR0) = #0001 (GR1) = #0002 (GR0) = #0003 (GR1) = #0003 (GR0) = #0006 (GR1) = #0004 (GR0) = #000A (GR1) = #0005 (GR0) = #000F (GR1) = #0006 (GR1) = #0015 (GR0) = #0007 (GR1) = #001C (GR0) = #0008 (GR1) = #0024 (GR0) = #0009 (GR1) = #002D (GR0) = #000A (GR1) = #0037

  2. 演習問題 3.2 解答例 演習問題(8),(9),(10)の各プログラムの機能は次の通り. (8) WORK でラベル付けされたメモリ領域に格納されている #1000 を GR1 へ転送し,その値から 1 減算した値を GR0 へ格納する. (9) A でラベル付けされたメモリ領域に格納されている値 5 の2の補数を計算して,B でラベル付けされたメモリ領域へ格納する. (10) A でラベル付けされた番地からつづく3ワード分のメモリ領域に順番に格納されている値 3, 7, 5 に,B でラベル付けされた番地からつづく3ワード分のメモリ領域に順番に格納されている値 9, 4, 1 をそれぞれ加えた値を C でラベル付けされた番地からつづく3ワード分のメモリ領域に順番に格納する.

  3. 演習問題 3.3 解答例 ABS START LD GR1,A ; SUBA GR1,B ; A の値から B の値を引き算 JPL QUIT ; 結果が正ならそのまま終了 LADGR0,#FFFF ; そうでなければ2の補数をとる XORGR1,GR0 ; XOR でビット反転(1の補数) LADGR1,1,GR1 ; 1を加えて2の補数 QUIT ST GR1,C ; RET A DC 4 B DC 7 C DS 1 END

  4. 演習問題 3.4 解答例 DICIMAL START IN AREA,LEN ; キーボードから数文字を AREA へ入力 LAD GR1,0 ; LAD GR2,0 ; LOOP LD GR0,AREA,GR1 ; AND GR0,MASK ; 数字の取り出し ADDA GR2,GR0 ; LAD GR1,1,GR1 ; CPA GR1,LEN ; 文字列の終わりをチェック JZE QUIT ; ADDA GR2,GR2 ; GR2 の値を2倍 ST GR2,WORK ;2倍した値を WORK へ保存 ADDA GR2,GR2 ;GR2 をまた2倍して結果4倍 ADDA GR2,GR2 ;GR2 をまた2倍して結果8倍 ADDA GR2,WORK ;8倍値に2倍値を加えて10倍 JUMP LOOP ; QUIT RET AREA DS 256 ; AREA 番地から最大256文字分確保 LEN DS 1 ; 文字数を自動カウントして保存する領域 MASK DC #000F WORK DS 1 END

  5. 演習問題 3.5 解答 ソースプログラム CMULTI START LAD GR0,0 LD GR1,A LD GR2,B LAD GR3,0 SUBA GR1,CHAR0 SUBA GR2,CHAR0 LOOP CPA GR3,GR2 JZE QUIT ADDA GR0,GR1 LAD GR3,1,GR3 JUMP LOOP QUIT RET CHAR0 DC '0' A DC '5' B DC '3' END オブジェクトプログラム 1000:1200 0000 1002:1010 1016 1004:1020 1017 1006:1230 0000 1008:2110 1015 100A:2120 1015 100C:4432 100D:6300 1014 100F:2401 1010:1233 0001 1012:6400 100C 1014:8100 1015:0030 1016:0035 1017:0033

  6. 演習問題 3.6 解答 ソースプログラム CCOUNT START LD GR0,CHAR LAD GR1,0 LAD GR2,0 LD GR3,SPACE LOOP CPA GR3,WORD,GR2 JZE QUIT CPA GR0,WORD,GR2 JPL HOP LAD GR1,1,GR1 HOP LAD GR2,1,GR2 JUMP LOOP QUIT RET CHAR DC 'n' WORD DC 'computer' SPACE DC ' ' END オブジェクトプログラム 1000:1000 1017 1002:1210 0000 1004:1220 0000 1006:1030 1020 1008:4032 1018 100A:6300 1016 100C:4002 1018 100E:6500 1012 1010:1211 0001 1012:1222 0001 1014:6400 1008 1016:8100 1017:006E 1018:0063 006F 006D 0070 0075 0074 0065 0072 1020:0020

  7. 演習問題 3.7 解答 (GR7) = 0000 0000 0010 1000 (GR7) = 0000 0000 0000 0000 (GR7) = 0000 0000 0010 1000 (GR7) = 0000 0000 0000 0000 (GR7) = 0000 0000 0010 1000 (GR7) = 0000 0000 0000 0000 (GR7) = 0000 0000 0010 1000 (GR7) = 0000 0000 0000 1000 (GR7) = 0000 0000 0010 1000 (GR7) = 0000 0000 0000 0000 (GR7) = 0000 0000 0010 1000 (GR7) = 0000 0000 0010 0000 (GR7) = 0000 0000 0010 1000 (GR7) = 0000 0000 0000 0000 (GR7) = 0000 0000 0010 1000 (GR7) = 0000 0000 0000 0000 (GR7) = 0000 0000 0010 1000 (GR7) = 0000 0000 0000 0000 (GR7) = 0000 0000 0010 1000 (GR7) = 0000 0000 0000 0000 (GR7) = 0000 0000 0010 1000 (GR7) = 0000 0000 0000 0000 (GR7) = 0000 0000 0010 1000 (GR7) = 0000 0000 0000 0000 (GR7) = 0000 0000 0010 1000 (GR7) = 0000 0000 0000 0000 (GR7) = 0000 0000 0010 1000 (GR7) = 0000 0000 0000 0000 (GR7) = 0000 0000 0010 1000 (GR7) = 0000 0000 0000 0000

More Related