我无法在LC-3仿真器中通过LD操作来计算指针的地址

时间:2019-09-16 17:51:42

标签: assembly machine-code lc3

下面的程序代码:

0011 000 000000000    ;Start at 0x3000
0101 010 010 1 00000  ;R2 <- 0 (counter)
0010 011 000010000    ;R3 <- M[x3012] (ptr)
1111 0000 00100011    ;Input to R0 (TRAP x23)
0110 001 011 000000   ;R1 <- M[R3]
0001 100 001 1 11100  ;R4 <- R1 <- 4 (EOT)
0000 010 000001000    ;if Z, goto x300E
1001 001 001 111111   ;R1 <- NOT R1
0001 001 001 1 00001  ;R1 <- R1 + 1
0001 001 001 0 00 000 ;R1 <- R1 + R0
0000 101 000000001    ;If N or P, goto x300B
0001 010 010 1 00001  ;R2 <- R2 + 1
0001 011 011 1 00001  ;R3 <- R3 + 1
0110 001 011 000000   ;R1 <- M[R3]
0000 111 111110110    ;Goto x3004
0010 000 000000100    ;R0 <- M[x3013]
0001 000 000 0 00 010 ;R0 <- R0 + R2
1111 0000 00100001    ;Print R0 (TRAP x21)
1111 0000 00100101    ;HALT (TRAP x25)
                      ;Starting Address of File
0000 000 000110000    ;ASCII x30 ('0')

我从字符串3-R3 <-M [x3012](ptr)开始的问题。我不明白指针如何获取地址x3012。由于LC-3仿真器,我知道地址是什么。它表明。以及如何计算PCoffset9?

0 个答案:

没有答案