SIC汇编程序输出中生成目标代码的混乱



所以现在我正试图理解对象代码是如何生成的,但这两行真的让我很困惑,有人想向我解释吗?

RSUB is 4C0000, I understand RSUB is 4C Mnemonic, but where did 0000 came from?
EOF BYTE C'EOF'  Object code is 454F46, how did they get that?
INPUT BYTE X'F1'      F1
how did generate F1 in the object code?
STCH BUFFER, X        549039
BUFFER is 1039, and STCH in mnemonic is 54, but shouldn't it be 541039?

also after a few lines,
LDCH BUFFER, X       509039?

所有这些都应该在体系结构的指令集参考和汇编程序的手册中得到回答。

RSUB是4C0000,我知道RSUB是4C助记符,但0000在哪里来自?

SIC似乎使用24位字和固定长度的指令编码。由于此指令显然不接受操作数,因此为零。也许cpu忽略了地址字段,所以你可以使用任何你想要的东西,或者它必须为零。找不到确切的答案。

EOF BYTE C'EOF'对象代码是454F46,他们是怎么得到的?

454F46分别只是EOF的ascii码。大概是汇编程序的C运算符指示它发出以下字符的ascii代码。

INPUT BYTE X'F1'F1如何在目标代码中生成F1?

假设您的汇编程序的X运算符意味着发出具有给定十六进制值的字节。

STCH BUFFER,X 549039 BUFFER为1039,助记符中的STCH为54,但应该是541039吗?

地址仅为低15位。比特#15被用作指示索引寻址模式的标志,因此1039变为9039

相关内容

  • 没有找到相关文章

最新更新