微机实验指导.docxVIP

  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文档。上传文档
查看更多
精品文档 你我共享 实验一 拆字、拼字程序 一、实验目的 掌握屏蔽一个字节中的高四位或低四位内容的方法,熟悉移位指令的用法。 掌握汇编语言设计和调试方法。 二、实验条件与内容 实验条件: 1. P Ⅱ以上的 PC计算机,及操作系统 Windows XP。 2. Masm for Windows 集成实验环境 V6.0 版本。 实验内容:( 1)把 4000H 单元的内容拆开, 高位送 4001H 低位,低位送 4002H 低位,4001H、4002H 的高位清零,一般本程序用于把数据送显示缓冲区时用。 2)把 4000H、4001H 的低位分别送入 4002H 高低位,一般本程序用于把显示缓冲区的数据取出拼装成一个字节。 三、程序框图 拆字程序框图 拼字程序框图 四、实验过程与步骤 在汇编语言环境下分别将拆字程序和拼字程序进行录入,并对程序进行编译。在 DEBUG 下对 程序分别进行调试: ( 1)在程序运行前,检查 4000H~4002H 中内容情况。 ( 2)用连续或单步方式运行程序,之后检查 4000H~4002H 内容变化情况。 思考题 MOV 指令在应用时应注意哪些事项? 单字和双字在存储器中是怎样存放的?请举例进行说明。 腹有诗书气自华 精品文档 你我共享 拆字程序清 : CODES SEGMENT ASSUME CS:CODES,DS:DATAS,SS:STACKS START: MOV BX,4000H ;把地址 元 4000H BX 寄存器 MOV [BX],5BH ;把所要拆字内容置 5BH MOV AL,[BX] ;把 4000H 元的内容 AL MOV AH,AL ;再 4000H 元的内容 AH MOV CL,04 ; 置移位次数 4 SHR AH,CL ; AH的内容右移 4 位 ADD BX,01 ( 或 INC BX) ;地址 元加 1 MOV [BX],AH ;把高位字送 4001H 元 AND AL,0FH ;屏蔽掉 AL 中的高四位 ADD BX,01 ( 或 INC BX) ;地址 元加 1 MOV [BX],AL ;把低位字送 4002H 元 HLT CODES ENDS ;程序 束 END START 此程序运行的 果是:(用 D DS:4000 ) 13C9:4000 5B 05 0B 00 00 ?? 拼字程序清 : CODES SEGMENT ASSUME CS:CODES,DS:DATAS,SS:STACKS START: MOV AX,DATAS MOV DS,AX MOV BX,4000H ;把地址 元 4000H BX 寄存器 MOV [BX],0F6H ;把 4000H 元所要拼的字置 F6H MOV [BX+1],28H ;把 4001H 元所要拼的字置 28H MOV AH,[BX] ;把 4000H 元的内容 AH MOV AL,[BX+1] ;把 4001H 元的内容 AL AND AL,0FH ;屏蔽掉 AL 中的高四位 MOV CL,4 ; 置移位次数 4 SHL AL,CL ; AL 的内容左移 4 位 AND AH,0FH ;屏蔽掉 AH中的高四位 腹有诗书气自华 精品文档 你我共享 OR AL,AH ; 行拼字 INC BX ;地址 元加 1 MOV [BX],AL ;将拼好的字保存在 4002H 元 HLT CODES ENDS ;程序 束 END START 此程序运行的 果是:(用 D DS:4000 ) 13C9:4000 F6 28 68 00 00 ?? 思考题 MOV 指令在 用 注意哪些事 ? 答:①MOV指令的目的操作数不允 用立即数方式; ② MOV指令的目的操作数不允 用 CS寄存器; ③除源操作数 立即数的情况外, 两个操作数中必 有一个是寄存器; ④不允 MOV指令在两个存 元之 直接 数据;⑤不允 在两个段寄存器之 直接 信息;⑥ MOV指令使用操作数 段寄 存器、或地址 元不能 非法数;⑦ MOV指令不影响 志寄存器 FLAG中的 志位。 字和双字在存 器中是怎 存放的? 例 行 明。 答:在 16 位 算机中, 字是由 2 个字 构成的。当一个整数字保存在存 器中 , 两个字 是按相反的 序存 的。首先存 的是低有效字 ,再把高有效字 存 在下一个地址。也就是 低位字 存 在低地址,高位字 存 在高地址。例如: 3456H 在存 器地址( 0000、 0001)中是 存放的: 地址 元: 0000 34H (数 ) 0001 56H 双字是 32 位 、 4 个字 ,并且是由两个 存 的相 的字 成的, 是非常重要的数据格 式。双字的存 与 字存

文档评论(0)

135****8847 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档