微程序设计实验实例讲解(计算机系).docVIP

微程序设计实验实例讲解(计算机系).doc

此“教育”领域文档为创作者个人分享资料,不作为权威性指导和指引,仅供参考
  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
微程序设计实验实例讲解(计算机系)

微程序设计实验实例讲解 指令格式:(说明:以下内容只是作为讲解之用,不必要按如此方式写在实验报告中!) 入口地址100H D4XX 0826: D400 假设D400从内存地址0826开始存放 IP(R6)=0826 PC ( ADDR1 0827: 0890 0890地址初值存放0011 PC+1( ADDR2 0828: 0891 0891地址初值存放0011 PC+1+1( 另一条汇编指令,内存地址:0829 功能: [ADDR1] + [ADDR2] ([ADDR2] (假设这条机器指令的汇编指令表示为:ADDM [ADDR2],[ADDR1]) 微地址 微程序: PC(R5) 100: PC→AR,PC+1→PC:?? 0000??0E00??A0B5??5402 ;将0890所在的地址0827送给地址寄存器AR,PC(0827)+1→PC 101: MEM→AR:????????????0000??0E00??10F0??0002 ;(MEM)读0827单元内容0890,并送给地址寄存器AR,准备读取该单元 ;内容0011 102: MEM→Q:?????????????0000??0E00??00F0??0000 ;(MEM)读0890单元内容0011,并送给Q寄存器,暂时保存 103: PC→AR,PC+1→PC:? ?0000??0E00??A0B5??5402 ;将0891所在的地址0828送给地址寄存器AR,PC(0828)+1→PC 104: MEM→AR:????????????0000??0E00??10F0??0002 ;(MEM)读0828单元内容0891,并送给地址寄存器AR,准备读取该单 ;元内容0011 105: MEM+Q→Q:?????????? 0000??0E01??00E0??0000 ;(MEM)读0891单元内容0011并与0890的内容(Q)相加,然后送给Q ;寄存器暂时保存 106: Q→MEM,CC#=0,3#:? 0029??0300??1020??0010 ;将两单元内容相加的结果(Q)写入地址为0891的存储单元 (MEM)中, ;并转向A4H地址执行后续处理程序。 ;CC#=/CC。写存储器或写I/O时,DC1必须选用运算器的输出(001)。 最后转移到地址290(=0A4H)执行后续处理程序 注:关于下地址“290”的转换问题,先将A4H=0A4H从右到左用二进制数写出,不足十位在最高位补“0”,然后将备用位(B45、44)用“00”代替,也就是在该数右边补上“00”并与左面的数组合在一起,再从右向左四位一组组合成十六进制数,即可得该微地址在下地址字段中的具体表示数。如: 0A4H=0010 1001 0000B=290 将微码输入到由900H开始的内存单元中 用“E”命令输入微码 在命令行提示符状态下输入: E900↙ 屏幕将显示: 0900: 之后继续输入:(每个数值间用空格键分开,输入完毕按回车键) 0000 0E00 A0B5 5402 0000 0E00 10F0 0002 0000 0E00 00F0 0000 0000 0E00 A0B5 5402 0000 0E00 10F0 0002 0000 0E01 00E0 0000 0029 0300 1020 0010↙ 将微码加载到微控存中 用“A”命令输入加载微码的程序 在命令行提示符状态下输入: A800↙ 屏幕将显示: 0800: 之后继续输入: 0800:MOV R1,900↙ ;微码在内存中的首地址 0802:MOV R2,7↙ ;微指令0804:MOV R3,100↙ ;微码在微控存中的首地址 0805:LDMC↙ ;加载微码指令 0806:RET↙ 0807:↙ G800↙ 微码便装入起始地址为100H的微控存中 输入程序,运行新指令 用“A”命令输入程序 在命令行提示符状态下输入: A820↙ 屏幕将显示: 0820: 之后继续输入: 0820:MOV R0,00↙ 0822:MOV [0890],R0↙ 0824:MOV [0891],R0↙ 0826:NOP↙ 0827:NOP↙ 0828:NOP↙ 0829:RET↙ ↙ 之后继续输入: D400 0890 0891↙ 用“U”命令察看输入的程序 在命令行提示符状态下输入: U820↙ 屏幕将显示: 0820:2C00 00 MOV R0,000822:3400 0890 MOV [0890],R0

文档评论(0)

panguoxiang + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档