我需要能够获取两个用户输入并将它们存储在LC3组件中的相同内存位置。例如,如果用户输入GO-我需要将G存储在一个寄存器中,将O存储在第二个寄存器中,但是将它们组合在同一存储器位置中。基本上,与PUTSP功能相反。我不明白你如何把一个放在0-8位,并指定另一个进入第9-15位,这样PUTSP功能运行就会打印出GO。
答案 0 :(得分:0)
所以基本上伪代码看起来像
doublechr = 0
r0 = getc();
doublechr += r0
doublechr = doublechr << 8;
r0 = getc();
doublechr += r0;
请记住,左移相当于乘以2的幂。您只需要简单地执行连续添加以将包含&#34; doublechr&#34;的寄存器加倍。
按位或不需要,因为在移位简单的ADD指令之后,保证底部的8位为零。