0

LC-3 汇编器必须能够将指令的助记符映射到其二进制操作码中。例如,给定一个 ADD,它必须生成二进制模式 0001。

用户必须输入 LC-3 汇编语言助记符,然后程序显示其二进制操作码。

如果汇编语言助记符无效,则会显示错误消息。

所以我正在用 LC-3 汇编语言编写 LC-3 汇编器的开头,只处理助记符 -> 操作码映射,而不是操作数。有没有办法做到这一点而无需 bruce 强制?也就是说,不必将每个助记词都写入内存。

(相关:区别:操作码、字节码、助记符、机器码和汇编

.ORIG x3000
AND R0, R0, #0 
    IN      
    LD  R1, A   
    ADD R1, R1, R0
    BRz ND

LD  R1, B   
    ADD R1, R1, R0
    BRz ZERO    

ND  AND R0, R0, #0
IN
LD  R1, N
    ADD R1, R1, R0
    BRz ZZZO
    BRnp
ZZZO    AND R0, R0, #0
    LD  R0, N1
ZERO    AND R0, R0, #0
    OUT 
    HALT
A   .FILL   x8041
B   .FILL   x8042
D   .FILL   x8044
E   .FILL   x8045
I   .FILL   x8049
J   .FILL   x804A
M   .FILL   x804D
N   .FILL   x804E
N1  .FILL   x
O   .FILL   x804F
P   .FILL   x8050
R   .FILL   x8052
S   .FILL   x8053
T   .FILL   x8054
4

0 回答 0