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

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

  1. 1、本文档共12页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
微程序设计实验实例讲解 指令格式:(说明:以下内容只是作为讲解之用,不必要按如此方式写在实验报告中!) 入口地址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)

jiqingyong12 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档