第2章8086微处理器及汇编语言(下).ppt

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

第二章微处理器与汇编语言(下) 三、指令系统 四、汇编语言 五、汇编语言程序设计 完整的汇编语言程序: DATASEG SEGMENT X DW 3 Y DW ? DATASEG ENDS CODESEG SEGMENT ASSUME CS:CODESEG, DS:DATASEG START: MOV AX, DATASEG MOV DS, AX . . . MOV AH, 4CH INT 21H CODESEG ENDS END START DATASEG SEGMENT X DW 3 Y DW ? DATASEG ENDS CODESEG SEGMENT ASSUME CS:CODESEG, DS:DATASEG START PROC FAR PUSH DS XOR AX, AX PUSH AX MOV AX, DATASEG MOV DS, AX . . . RET 六、系统功能调用 七、宏指令、条件汇编及上机过程 八、模块化程序设计与混合编程 (2)键盘I/O中断调用(16H) 中断类型号为16H,用指令INT 16H调用。 ① (AH)=0 从键盘读一个字符到AL中,为ASCII码。 ② (AH)=1 从键盘缓冲区读字符到AL中,按任一键,ZF为“0”;否则,置ZF为“1”。 ③ (AH)=2 读取特殊功能键的状态,AL中为各特殊功能键的状态。 (3)打印机I/O中断调用(17H) 中断类型号为17H,用指令INT 17H调用。规定打印机号在DX中,编号分别是0、1、2。 ①(AH)=0 将AL中的字符在打印机上打印。入口参数:(AH)=0,(DX)=打印机号,(AL)=字符ASCⅡ码。出口参数:AH为打印机状态信息。 ② (AH)=1 对打印机初始化。入口参数:(AH)=1,(DX)=打印机号,(AL)=初始化命令码。出口参数:AH为打印机状态信息。 3. 循环程序设计 (2)循环程序的基本结构形式 ① “先执行、后判断”结构(DO~WHILE) ② “先判断、后执行”结构 (WHILE, FOR) (3)循环控制方法 ① 用计数控制循环 只要编制程序时,循环次数已知,就可以使用这种循环方法设计程序。 3. 循环程序设计 例:将16位带符号的二进制数转换成十进 制数,并将十进制数的ASCII码存入存储器字 节单元中。 首先分析题意,确定本题的解题步骤是: 首先处理符号;其次将二进制数转换成十进制 数;最后把BCD码变成ASCII数字。 设: 二进制数送AX 十进制数10000,1000, 100,10,1顺序存放到内存COUNT 开始的单元中。 所求的十进制数的ASCII码数字存放到BUF内存开始的单元。 程序流程图,如图2-5-11所示。源程序如下: DATA SEGMENT COUNT DW 10000,1000,100,10,1 BINARY DW 7FFFH BUF DB 6 DUP(?) DATA ENDS STACK SEGMENT STACK DB 256 DUP(?) STACK ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START:MOV AX,DATA MOV DS,AX MOV AX,BINARY OR AX,AX JNS PLUS NEG AX MOV BUF,‘–’ JMP SHORT,CUD PLUS:MOV BUF,‘+’ CUD:MOV SI,1 MOV CX,5 MOV BX,OFF

文档评论(0)

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

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

1亿VIP精品文档

相关文档