word格式整理版
即 EA =(R)。
(7)相对寻址:操作数地址为程序计数器 PC 中的内容与指令中给出的地址偏移量 D 之 和,位移量 D 通常以补码形式给出,可正可负。
即 EA=(PC)+D。
(8) 基址寻址:操作数地址为基址寄存器中的内容与指令中给出的地址偏移量 D 之和,即 EA=(R)基址 +D
(9)变址寻址:操作数地址为变址寄存器中的内容与指令中给出的地址偏移量 D 之和,
3.3 指令格式
由于本模型机机器字长只有8位二进制长度,故使用单字长指令和双字长指令。根据要求,设计该模型机能执行的不同指令,例指令格式及功能如下:
(1) 算术逻辑运算指令
9 条算术逻辑指令的名称、功能和具体格式见表 3.1-1
表 3.1-1
范文范例 学习指导
word格式整理版
算术逻辑运算指令用单字节表示,寻址方式采用寄存器直接寻址,其格式如下:
7654 32 10 范文范例 学习指导
word格式整理版
OP-CODE rs rd
其中,OP-CODE 为操作码,rs 为源寄存器,rd 为目的寄存器,并规定:
(2) 访问指令及转移指令
模型机设计 2 条访内指令,即存数(STA)、取数(LDA),2 条转移指令,即无条件转移(JMP)、结果为零或有进位转移指令(BZC),指令格式为:
7 6 5 4 3 2 00 M 1 0 Rs 或 rd 选定的寄存器 00 01 10 R0 R1 R2 OP-CODE RD D
其中,OP-CODE 为操作码,rd 为目的寄存器地址(LDA、STA 指令使用)。D 为位移量 (正负均可),M 为寻址模式,其定义如下:
范文范例 学习指导
寻址模式 M 有效地址 E 00 01 10 11 说 明 E= D 直接寻址 间接寻址 E=(D) E=(RI)+D RI 变址寻址 E=(PC)+D 相对寻址 word格式整理版
(3) I/O 指令
输入(IN)和输出(OUT)指令采用单字节指令,其格式如下:
其中,addr=01 时,选中“INPUT DEVICE”中的开关组作为输入设备,addr=10
时,选中“OUTPUT DEVICE”中的数码块作为输出设备。
(4) 停机指令 指令格式如下:
HALT 指令,用于实现停机操作。
四 指令和和微程序的设计
4.1 指令系统
本模型机共有16 条基本指令,其中算术逻辑指令7条,访问内存指令和程序控制指令4条,输入输出指令2条,其它指令1 条。表X列出了各条指令的格式、汇编符号、指令功能。
按照系统建议的微指令格式,参照微指令流程图,将每条微指令代码化,译成二进制代码表, 表X 即为将图X微程序流程图按微指令格式转化而成的“二进制微代码表”。并将二进制代码表转换为联机操作时的十六进制格式文件,见下表X。
表 X
24 S3 23 S2 22 S1 21 S0 20 M 19 Cn 18 WE 17 A9 16 A8 1514 13 A 12 11 10 B 9 8 7 C 6 μA5 5 μA5 4 μA5 3 μA5 2 μA5 1 μA5 范文范例 学习指导 word格式整理版
4.2 微程序的设计
修改程序:把ADC机器指令的进行了修改,本来是执行:DR0+DR2→BUS→R0,把微程序改了,这条指令就执行:DR0或DR2→BUS→R0,其中把这条微程序$M2B959B41改成M2B159B41就执行上条指令。得到的结果如图所示: 在微程序流程图中找到ADC执行的数序号为53(八进制数),转化为十六进制数为2B。在给定的微程序中找到含2B的程序,为$M2B959B41将9,5转化为2进制数为1001,0101.其中,1001代表执行的运算,0101中的前两位中的0代表M=0,1代表Cn=1,对照74LS181的逻辑功能表,找到ADC所代表的是F=A加B,在F=A加B所在列寻找合适的算法即可。我找到的F=A或 B。其S3到S0为0001。转化为十进制数为1.将$M2B959B41中的9改为1,保存微程序。
范文范例 学习指导