- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
练习: (BX)=012EH (AX)=0381H (SS)=0000H 分析: ①MOV SP,2FCOH ②PUSH AX ③PUSH BX 对堆栈的影响。 答案: ①执行后(SP)=2FCOH ②执行后 03H→02FBFH 81H→02FBEH (SP)=2FBEH ③执行后 01H→02FBDH 2EH→02FBCH (SP)=2FBCH 4、查表转换指令XLAT 格式: XLAT str-table 功能: 根据表中代码序号查出表中对应代码元素的内容 注解: (1)描述过程为: (AL)←((BX )+(AL)) 该指令的操作数都是隐含的,所执行的操作是将BX为基地址,AL为位移量的字节存储单元中的数送AL。 (2)合法格式有: XLAT;XLAT src-table;XLAT ES:src-table (3)可用于不同数制和编码间的转换 XLAT指令使用方法: 先建立一个字节表格; 表格首偏移地址存入BX; 需要转换代码的序号(相对与表格首地址位移量)存入AL;(表中第一个元素的序号为0) 执行XLAT指令后,表中指定序号的元素存于AL中。(AL)为转换的代码。 例1:建立数字0~7对应的格雷码表为: 表地址 序号 格雷码 十六进制值 TABLE 0?? 000??? 00H??? TABLE+1 1?? 001??? 01H?? TABLE+2 2?? 011??? 03H?? TABLE+3 3?? 010??? 02H? TABLE+4 4?? 110??? 06H??? TABLE+5 5?? 111?? 07H?? TABLE+6 6?? 101??? 05H??? TABLE+7 7?? 100?? 04H? 要求从键盘输入一位0~7的十进制数码,把它变成格雷码再输出到显示器上。 输入5,查格雷码“111”的十六进制值,程序: MOV BX,OFFSET TABLE MOV AL,5H XLAT TABLE 执行结果:(AL)=07H 执行指令序列: MOV BX,OFFSET Hex_table MOV AL,0AH XLAT Hex_table 假设: (DS)=F000H, Hex_table=0040H (AL)=0AH 执行XLAT以后: (AL)=41H=(F004AH) 即“A”的ASCII码。 30H 31H 32H ... 39H 41H 42H ... 46H ... Hex_table Hex_table+1 Hex_table+2 Hex_table+0AH Hex_table+0BH Hex_table+0FH F B A 9 1 2 0 16进制数的ASCII码表 例2:内存的数据段中有一张十六进制数字的ASCII码表。 首地址为:Hex_table ,欲查出表中第10个元素(‘A’) (二)输入输出指令(Input and Output) 输入输出指令共两条: 1、IN (Input byte or word) 输入指令用于CPU从外设端口接受数据 2 、OUT (Output byte or word) 输出指令用于CPU向外设端口发送数据。 无论接受还是发送数据,必须通过累加器AX(字)或AL(字节),又称累加器专用传送指令。用来完成累加器(AX/AL)与I/O端口之间的数据传送功能。 输入、输出指令不影响标志位。 1、 输入指令IN 格式:IN ac,port 功能: 将端口内的字节/字送入AL/AX (acc) ? (port) 具体形式有四种: IN AL, data8 ; 端口地址8位,输入一个字节 IN AX, data8 ;端口地址8位,输入一个字 IN AL, DX ;端口地址16位,输入一个字节 IN AX, DX ;端口地址16位,输入一个字 必须通过累加器AX(字)或AL(字节)输入数据。 2 、输出指令OUT 格式: OUT port,ac 功能
文档评论(0)