




已阅读5页,还剩9页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
(1) 设计一条指令,比较SR内容与ADDR. 若SRADDR; 否则SR-ADDR-ADDR.指令格式:D40SRADDR设计分析:100:把PC的值(即ADDR的地址)送到AR中,然后PC+1101:用MEM-AR将ADDR从内存中取出并送到AR中102:利用SR-MEM-Q计算SR与ADDR的差,并让各标志位接受ALU的运算结果, 103:若S=1(即SRADDR),条件转移到105,否则顺序执行104104:将Q的值(即SR-ADDR)送到ADDR中105:ARAR,PC+1-PC: 0000 0E00 A0B5 5402101H: MEM-AR: 0000 0E00 10F0 0002102H: SR-MEM-Q,接受标志: 0000 0E01 01D0 0080103H: S=1(即ARMEM,CC#=0: 0029 0300 1020 0010105H: SR+MEM-Q: 0000 0E00 00D0 0080 106H: Q-MEM,CC#=0: 0029 0300 1020 0010A800MOV R1,900MOV R2,7MOV R3,100LDMCRETG800A820MOV R7,0001MOV R1,0002MOV 082A,R1NOPNOPRETE826D407 082AG820U820运行结果如下:0820:2C70 0001 MOV R7, 00010822:2C10 0002 MOV R1, 00020824:3401 082A MOV 082A,R10826:D407 DW D4070827:082A ADC R2, R100828:AC00 RET0829:0000 NOP082A:0003 NOP 结果分析:由于运行前SR=R7=0001E8210821 0001:0002G820U820运行结果如下:0820:2C70 0002 MOV R7, 00020822:2C10 0002 MOV R1, 00020824:3401 082A MOV 082A,R10826:D407 DW D4070827:082A ADC R2, R100828:AC00 RET0829:0000 NOP082A:0000 NOP 结果分析:由于运行前SR=R7=0002=ADDR=082A=0002,故运行后ADDR=0000=SR-ADDR,结果正确.(2) 设计一条指令,比较SR内容与ADDR. 若SRPC;否则SR+ADDR-DR.指令格式:D4DRSRADDROFFSET设计分析:100:把PC的值(即ADDR的地址)送到AR中101:用MEM-AR将ADDR的值从内存中取出并送到AR中102:利用MEM-Q将ADDR的值从内存中取出然后送到Q寄存器中103:SR-Q,并让个标志位接收运算结果,以便根据标志位进行条件转移104:降OFFSET的地址送到AR中并且PC+1,若S=1(即SR=ADDR时,SR+Q-DR,结束106:ARAR,PC+1-PC: 0000 0E00 A0B5 5402101H: MEM-AR: 0000 0E00 10F0 0002102H: MEM-Q: 0000 0e00 00f0 0000103H: SR-Q:改变标志位: 0000 0e01 9200 0088104H:S=1(即SRAR,PC+1-PC: 0041 83B0 A035 5402105H: SR+Q-DR,CC#=0: 0029 0311 B000 0088 106H: IP+MEM-C,CC#=0: 0029 0310 30D6 5000装载微码:A800MOV R1,900MOV R2,7MOV R3,100LDMCRETG800A820mov r1,0002mov 0890,r1nopnopnopretmov r0,1111RetE824D487 0890 00041) RR7 :0001 SR(0001)ADDR(0002) R8=00063) RR7:0002 SR(0002)=ADDR(0002) R8=0004 (3) 设计一条指令。将SR与绝对地址ADDR单元内容比较,如果SRADDR,否则,ADDR+SR-ADDR。指令格式:D40SRADDR设计分析:先取出ADDR中的值,然后用SR-ADDR-Q来计算二者的差值,并利用运算所得的标志位判断比较二者的大小以进行条件转移:当S=1时,说明SRQ,然后将Q的值写回ADDR;否则,顺序执行ADDR+SR-Q,并将Q的值写回ADDR中。微程序:100H: PC-AR, 0000 0E00 90B0 5002101H: MEM-AR: 0000 0E00 10F0 0002102H: SR-MEM-Q,接受标志: 0000 0E01 01D0 0080103H: S=1(即SRQ,转移到105: 0041 8310 00D0 0080 105H: MEM-SR-Q: 0000 0E00 02D0 0080 106H: Q-MEM,CC#=0: 0029 0300 1020 0010加载微程序:E900 输入以上微码(2) 加载到微控存程序段微码存放在900H(或某内存单元)开始的内存单元中A8000800:MOV R1,900 ;微码在内存中的首地址0802:MOV R2,7 ;共 9条微指令0804:MOV R3,100 ;微码在微控存中的首地址0806:LDMC ;加载微码指令0807:RET0808: G800 ;加载微指令到控制存储器(3) 运行程序段A820 MOV R1,01 ;R1是指令中的SR,用它和DATA比较MOV R2,02MOV 082A,R2NOP NOPNOPNOPRET E826 输入以下内容:D401 082A (4) 运行结果G820 ;运行程序结果:1.(SR=01)E821 0002 (SR=02)=(ADDR=02)时 ADDR=0004(4)设计一条条件转移指令。将SR与内存单元DATA的值进行比较, 1)如果SRDR, 2)如果SRDATA,则ADDR-PC 指令格式:D4DRSRDATAADDR 设计分析:一开始要将PC即DATA的地址送到AR,并PC+1-PC,因为两种情况下PC都至少要指向第三行ADDR处。从存储器中取出DATA的值,把SR和DATA的值相减,让各个标志位接收运算结果,并根据标志位S的值判断条件转移,同时要再将PC 即ADDR的地址送到AR中并PC+1-PC1)当S=1时,SRDR2)否则,SRDATA,顺序执行ADDR-PC 微程序 100H: PC-AR,PC+1-PC: 0000 0E00 A0B5 5402101H: mem-Q: 0000 0e00 00f0 0000103H: SR-Q:改变标志位: 0000 0e01 9200 0088104H:S=1(即SRAR,PC+1-PC: 0041 43B0 A035 5402104H:MEM-PC,CC#=0: 0029 0300 30F0 5000a8105H:SR+Q-DR,CC#=0: 0029 0311 B000 0088(2) 加载到微控存程序段微码存放在900H(或某内存单元)开始的内存单元中A8000800:MOV R1,900 ;微码在内存中的首地址0802:MOV R2,6 ;共 6条微指令0804:MOV R3,100 ;微码在微控存中的首地址0806:LDMC ;加载微码指令0807:RET0808: G800 ;加载微指令到控制存储器(3) 运行程序段A820 MOV R1,01 ;R1是指令中的SR,用它和DATA比较NOPNOPNOPRET A82AMOV R8,10F0 ;大于等于时,将会跳到82A执行这条赋值指令RETE822 输入以下内容:D421 0088 082A (4) 运行结果G820 ;运行程序结果:1.SR(0001)E8210001:0088SR(0088)=DATA(0088)时R8=10F0E8210088:0099Sr(0099)DATA(0088)时R8=10F0(5)把用绝对地址表示的内存单元ADDR1的内容与内存单元ADDR2的内容相加,结果存到ADDR1单元中。一. 实验器材TEC-2实验计算机、电脑各一台二. 实验分析与设计1. 指令格式指令格式:D4XXADDR1ADDR22. 指令功能功能:ADDR1 + ADDR2 ADDR13. 设计分析 1)PC加1后不送入PC,而是直接存入AR中,这样即可以通过AR逐步取出ADDR2中的内容到Q中暂时存放,而PC的值并不发生改变; 2)将PC送到AR,这次PC指向的是ADDR1的地址,即向AR中送入ADDR1的地址,然后PC自加1送入PC中,然后逐步取出ADDR1指向的内存中的数据; 3)再将PC加1,并且不将PC送到AR中,以免覆盖之前AR中ADDR1的地址,此操作用于跳出该指令; 4)将2)中取出数据Q中的相加后送到Q; 5)将Q中的数据送到AR指向的内存中,即ADDR1;4. 微程序 100:PC+1AR: 00000E0090B55402101:MEMAR:00000E0010F00002102:MEMQ:00000E0000F00000103:PCAR,PC+1PC:00000E00A0B55402104:MEMAR:00000E0010F00002105:PC+1PC: 0000 0E00 A0B5 5400106:MEM+QQ:00000E0100E00000107:QMEM,CC#=0:00290300102000105. 加载到微控存程序段说明:微码存放在900H(或某内存单元)开始的内存单元中 A8000800:MOV R1,900;微码在内存中的首地址0802:MOV R2,8 ;微指令条数0804:MOV R3,100;微码在微控存中的首地址0806:LDMC ;加载微码指令0807:RET0808:6. 运行程序段A8200820:MOV R0,00110822:MOV 0890,R00824:MOV 0891,R00826:NOP 0827:NOP0828:NOP0829:RET E826 然后输入以下内容:D400 0890 08917. 运行结果G820用D命令查看运算结果D890则屏幕显示0890:0022 0011 (6) 设计一条半字交换指令 1. 指令格式指令格式: D8DR02. 指令功能 DR(I15-I8)与DR(I7-I0)的内容互换3. 设计分析 1)将DR的内容送到Q寄存器中,并启用4号命令,因为预备循环8次,所以下 地址字段要写7; 2)用8号命令重复循环,让Q和DR中的数据联合左移8次,Q中的高8位作为 填充移入到DR的第八位,就相当于完成了DR中数据高低位的交换; 3)循环结束后,顺序执行.4. 微程序 110:DRQ,4#: 0001C40080300008111:R0QR0Q(联合左移),8#:00000806E0300208112:CC#: 00290300903000085. 加载到微控存程序段说明:微码存放在900H(或某内存单元)开始的内存单元中 A8000800:MOV R1,900;微码在内存中的首地址0802:MOV R2,3 ;微指令条数0804:MOV R3,110;微码在微控存中的首地址0806:LDMC ;加载微码指令0807:RET0808:6. 运行程序段A8200820:MOV R0,80F00822:NOP0824:N0P0825:NOP0827:NOP 0828:RET E822 然后输入以下内容:D8007. 运行结果G820用D命令查看运算结果R则屏幕显示R0= F080 (7)设计一条指令,实现的功能是:当DR=SR时,原PC(IP)+OFFSETPC;当DRSR时,ADDRPC,否则,顺序执行下条汇编指令。1. 指令格式指令格式: D4DRSROFFSETADDR2. 设计分析 1) 100:另DR-SR并让各个标志位接受ALU的状态标志; 2)101:PCAR,将OFFSET的地址送到AR中,然后根据标志位判断,如果零标志位等于1,说明DR=SR,利用下地址字段给出跳转的地址104; 3)102:若零标志位不为1,则由顺寻执行到此处。根据负标志位判断,若为1,则说明DRSR,则用PC+1PC顺序执行下一条汇编指令; 5)104:由101跳转至此后,用IP+OFFSET(MEM)PC将ADDR送到PC中完成转移; 6)105:由102跳转至此后,用ADDR(MEM)PC完成转移。3. 微程序 100:DR-SR;接受标志: 0000 0E01 9110 0088101:PC-AR,DR=SR时跳到104: 0041 0370 9030 5002 102:PC-AR, PC+1-PC,DRPC,DRSR时执行下条指令: 0029 0300 B030 5400 104:IP+OFFSET(MEM)-PC: 0029 0300 30D6 5000105:ADDR(MEM)-PC: 0029 0300 30F0 5000(2) 加载到微控存程序段4. 加载到微控存程序段说明:微码存放在900H(或某内存单元)开始的内存单元中 A8000800:MOV R1,900;微码在内存中的首地址0802:MOV R2,6 ;微指令条数0804:MOV R3,100;微码在微控存中的首地址0806:LDMC ;加载微码指令0807:RET0808:5. 运行程序段A8200820:MOV R7,70822:MOV R8,80824:MOV R0,00826:NOP0827: NOP0828:NOP0829: NOP 082A:MOV R0,4444 082C: RET 082D: MOV R0,5555 082F: RET 0830: MOV RO,7777 0832: RET E826 然后输入以下内容:D478 0007 08306. 运行结果1) R7=7,R8=8 G820 用R命令查看运算结果 R0=7777 (成功跳转至0830处)2) E821 输入 0008 (即R7=8,R8=8) G820 用R命令查看运算结果 R0=5555 (成功跳转至IP+OFFSET即082D处)3) E821 输入 0009 (即R7=9,R8=8) G820 用R命令查看运算结果 R0=4444 (成功执行下一条指令,即082A处)(8)设计一条指令,以实现将SR内容与内存单元ADDR的内容相加,结果存到ADDR单元中。1.指令功能 功能:ADDR+SRADDR2.指令格式 指令格式:D40SRADDR3.设计分析根据实验册Page45后的A8000800:MOV R1,900;微码在内存中的首地址0802:MOV R2,5 ;微指令条数0804:MOV R3,100;微码在微控存中的首地址0806:LDMC ;加载微码指令0807:RET0808:(二)用”G”命令运行加载微码的程序在命令行提示符状态下输入:G800微码便装入起始地址为100H的微控存中. 6.输入程序并运行新命令 (一)用”A”命令输入程序 在命令行提示符状态下输入: A8200820:MOV R0,00110822:MOV R8,00010824:MOV 0890,R00826:NOP 0827:NOP0828:RET (二)用”E”命令输入新指令 在命令行提示符状态下输入: E8260826: D400 0890 0891 7.用”G”命令运行程序 在命令行提示符状态下输入 G820 然后用”D”命令察看运行结果 在命令行提示符状态下
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年热切割技术实操考试题库及答案参考
- 2025年村级养老驿站营养知识考试模拟题及答案
- 2025年入门指南与模拟试题软件开发者面试准备全攻略
- 2025年地理信息系统GIS初级工程师模拟题及解析
- 制作课件一的教学反思
- 7的分成减法教学课件
- 2025年初级律师助理面试必-备题库及解析
- 2025年安徽省安庆市大观区中考化学临考模拟试卷-
- 2025年物资储备管理局招聘考试必-备知识点梳理
- 2025年初级国际贸易实务模拟题解析
- 2025年秋季开学第一课《翻越你的浪浪山》课件
- 2025年疾控实验室生物安全及保密相关知识理论培训考试试题(含答案)
- 2025年岗前安全培训试题及答案
- 食品用纸包装容器等制品生产许可实施细则
- 光伏电站施工质量控制与安全措施
- 2025至2031年中国影视广告片行业投资前景及策略咨询研究报告
- 无人机应急处置预案
- 2025年山东省青岛市中考化学真题含答案
- 托育机构管理办法
- 财务报销费用培训
- DB11∕T 510-2024 公共建筑节能工程施工质量验收规程
评论
0/150
提交评论