网站大量收购独家精品文档,联系QQ:2885784924

微机原理与接口例题与答案.doc

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

1、例 编写程序,计算75÷6=l 2……3 解:该除法运算过程表示如下:(注:75以BCD码的形式存放) 第一个商为1→ 1 2 ← 第二个商为2 6/ 7 5 - 6 ----------------- 第一个余数为1→ 1 5 - 1 2 ----------------- 3 ← 第二个余数为3 程序如下: FIRST DB 06H ;除数6 SECOND DB 75H ;被除数75H THIRD DB 2 DUP(0) ;存商 FOUR DB ? ;存余数 ……… MOV AH,00H ;第一个被除数高位AH清0 MOV AL,SECOND ;AL ?被除数75 AND AL,0F0H ;截取高4位 MOV CL,04H ROL AL,CL ;移至低4位 DIV FIRST ;AX/06,即0007/06; ;得结果:AL?商为1,AH余数?1 MOV THIRD+1,AL ;结果单元?第一个商1 MOV AL,SECOND ;AL?被除数75 AND AL,0FH ;AL?截低4位,故AX=0105H AAD ;将AX中内容0105H调整为0FH DIV FIRST ;0FH/6,结果:AL?商为2,AH?余数3 MOV THIRD,AL ;THIRD单元?第二个商2 MOV FOUR,AH ;FOUR单元?第二个余数3 2、 例 设AL寄存器中存有报警标志。若D7=1,表示温度报警,程序要转到温度报警处理程序T_ ALARM;D6=1,则转压力报警程序P_ALARM。用TEST指令来实现这种功能。 解:TEST AL,80H ;查AL的D7=1? JNZ T_ALARM ;是1(非零),则转温度报警程序 TEST AL,40H ;D7=0,D6=1? JNZ P_ALARM ;是1,转压力报警 (其中:JNZ为条件转移指令,表示结果非0 (ZF=1)则转移) 3、 例 要求把数据段中以SRC_MESS为偏移地址的一串字符“HELLO!”,传送到附加段中以NEW_LOC开始的单元中。 解:DATA SEGMENT ;数据段 SRC_MESS DB ‘HELLO!’ ;源串 DATA ENDS ; EXTRA SEGMENT ;附加段 NEW_LOC DB 6 DUP(?) ;存放目的串 EXTRA ENDS ; CODE SEGMENT ASSUME CS:CD, DS:DATA, ES:EXTRA START: MOV AX,DATA MOV DS,AX ;DS=数据段段址 MOV AX,EXTRA MOV ES,AX ;ES=附加段段址 LEA SI,SRC_MESS ;SI指向源串偏移地址 LEA DI,NEW_LOC ;DI指向目的串偏移地址 MOV CX,6 ;CX作串长度计数器 CLD ;清方向标志,地址增量 REP MOVSB ;重复传送串中各字节,直到CX=0 其中“REP MOVSB”指令可用以下几条指令代替: AGA

文档评论(0)

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

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

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档