微机原理第七章.ppt

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

该程序的移位指令的执行过程如图所示: 使用32位指令编写的程序段如下: W DW 65525 J2 DD 0 MOVZX EAX,W SHL EAX,1 MOV EDX,EAX SHL EAX,2 ADD EAX,EDX MOV J2,EAX 例7.3 字变量NUMW中有一无符号数,编写程序,计算(NUMW)?16+30并将结果送入NUMW+2和NUMW NUMW DW 1234H,0 MOV CL, 4 ROL NUMW, CL ;将NUMW字单元中的1234H变成2341H MOV AX, 000FH AND AX, NUMW ;取低位字的最低4位 AX=0001H AND NUMW, 0FFF0H ;清低位字的最低4位 (NUMW)=2340H ADD NUMW, 30 ;低位字加30 ADC AX, 0 ;将低位字相加的进位加入高位字 MOV NUMW+2, AX 例7.4 将AX中小于256大于0的3位BCD数转换为二进制数,存入字节变量SB中 (P173) 思路:用(百位?10+十位)?10+个位的方法将BCD数转换为二进制数 如将BCD数255H转换为二进制,运算的过程为: SB DB 0 MOV CL, 2 SHL AH, 1 ;百位×2 MOV SB,AH ;暂存2百位 SHL AH, CL ;百位再乘以4得23百位 ADD AH,SB ;23百位+2百位得10百位 MOV SB,AL ;暂存十位和个位 SHR AL,CL ;取十位 SHR AL,CL ADD AH,AL ;10百位+十位 MOV AL, SB ;十位和个位送AL SHL AH, 1 ;(10百位+十位)?10 MOV SB,AH SHL AH, CL ADD SB,AH ;23(10百位+十位)+2(10百位+十位) AND AL, 0FH ;取个位 ADD SB, AL ;加上个位 1.调用的一般过程: 置入口参数 功能调用号→AH 执行INT 21H 分析出口参数 视具体情况而定 7.5 系统功能调用 调用格式: MOV AH,1 INT 21H 入口:无入口参数 出口:键入字符ASCII码值在AL中,回显该字符。 2.常用功能调用 (1)1号功能调用——键入并显示一个字符 调用格式: MOV DL,待显示字符的ASCII MOV AH,2 INT 21H 入口:输出字符的ASCII 送 DL 出口:无出口参数 例:显示字符 ’B’ MOV AH,2 MOV DL,’B’ INT 21H (2)2号功能调用——显示器显示一个字符 调用格式: MOV DX,待显示字符串的首偏移地址 MOV AH,9 INT 21H 入口:DS:DX置字符串首地址,字符串以‘$’结束 出口:无出口参数 (3)9号功能调用——显示器显示字符串 例:显示 A…Z 26个字符 方法一:用2号功能调用,单个字符依次输出 方法二:定义一个存储区,存放26个字符,并以$结束,用9号功能调用输出字符串 OBUF DB ’ABCD…XYZ$’ MOV DX,OFFSET OBUF MOV AH,9 INT 21H OBUF ’A’ ’B’ ’Z’ ’$’ ︰ 调用格式: MOV DX,数据区的首偏移地址 MOV AH,10 INT 21H 入口:DS:DX置输入数据区首址,第一单元置允许键入的字符数(含回车符) 出口:键入的实际字符数在第二单元中,键入的字符从第三单元开始存放 (4)10号功能调用——键入并显示字符串 变量数据区IBUF应在

文档评论(0)

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

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

1亿VIP精品文档

相关文档