一、 实验目的
二、 实验设备
五、 实验步骤
• 针对下列指令
– INL DR
– OUTH SR
– STA [ADDR], SR
– LD DR, [ADDR]
– JMP ADDR
• 写出机器指令格式 • 画出微指令流程图
• 使⽤上述指令系统编写程序,实现
– INPUT读⼊数据保存到ADDR,
– 将ADDR内容在OUTPUT显⽰。
– 循环往复 – 注意:INPUT读⼊到内存和内存输出到OUTPUT所使⽤的寄存器要求不是同⼀个
六、 调试过程、结果和分析
• 针对下列指令
– INL DR
– OUTH SR
– STA [ADDR], SR
– LD DR, [ADDR]
– JMP ADDR
• 写出机器指令格式
根据实验8 我们不难设定以下格式



鄙人自行设计的指令图


没加data segment
assume ds:data
表示这是个分段的(同时用ROM和RAM)

指令码和长度的设计详细看我实验8文章
这里别忘了
RD – 奇
RS – 偶
比如当源是Register,而目标是IOL的时候,我们这个时候如果设定指令码是21
先把21转换成16进制
0100 0001
0100转换成1101000000(对应的散转地址640,所以2开头对应就是640,0开头对应600)
如果我们使用偶传偶(这里第二个偶指INPUT/OUTPUT的低位—也就是IOL)那么第一个偶对应RD部分(也就是01,也就是R1寄存器)
如果使用奇传偶,那么对应的奇使用的是RS部分(也就是00,也就是R0寄存器)
开头

640

680

6C0

700

740

实验过程中我们可以发现这次变化的是程序区

数据区也被我们装进数据

最后根据实验要求对剩余寄存器进行填充
