我正在尝试编写一个接受用户输入并打印该输入的二进制形式的程序。我正在使用getc陷阱进行输入。我知道getc输入将存储在R0中,因此我认为需要使用BRzp然后AND每个位输出1或0.有人可以告诉我,我是否正在思考正确的方向。
PS我必须在字符串中输出二进制代码。
答案 0 :(得分:0)
有几件事。
我正在使用getc陷阱进行输入。
如果您正在使用GETC来获取角色,那么如果您想让输入在屏幕上回显,您应该立即放置PUTC。
我在考虑需要使用BRzp
BR是一个条件分支。除非您希望PC分支到代码的不同部分,否则您不应该使用它。
然后AND每个位
AND是一个布尔代数函数。 0101和0011将是0001.
PUTC或PUTS(用于字符串)用于向控制台显示ASCII字符。
在解决LC3中的任何编码之前,我建议您在解决问题之前先阅读每个psudo-code和psudo-op的功能以及LC3的功能。
这张幻灯片是一个很好的起点。它基本上向您展示了在汇编编码之前需要了解的所有内容:https://classes.soe.ucsc.edu/cmpe012/Winter09/lectures/06_LC3_Assembly.pdf
计算机系统简介教科书的附录:http://highered.mheducation.com/sites/dl/free/0072467509/104691/pat67509_appa.pdf