7、汇编语言程序设计幻灯片.pptVIP

  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文档。上传文档
查看更多
7.1 汇编语言程序及开发过程 一、基本概念 机器语言:指令,是CPU唯一能识别的语言,用二进制表示; 汇编语言:是机器语言的一种助记符形式,与机器语言一一对应; 汇编程序:把汇编语言翻译成机器语言的程序。(翻译、直译) 应用场合 1.程序要求快、占用较小的存储容量。 操作系统的核心程序段 实时控制系统的软件 智能仪器仪表的控制程序 2.程序要直接、有效地控制硬件 I/O接口的初始化程序段 外设的低层驱动程序 3.没有合适的高级语言时 开发最新的处理器程序 4.其它:加密解密软件、分析和防治计算机病毒 二、汇编语言的开发过程 初学程序设计最有效方法 1.阅读源程序: 掌握程序的一般结构 学习实现经典算法 2.上机调试: 掌握指令的语法格式、功能 避免常见的语法错误 训练调试技巧 DATA SEGMENT STRING DB ‘Hello World!’, ‘$’ DATA ENDS CODE SEGMENT ASSUME CS:CODE, DS:DATA, SS:STACK START: MOV AX, DATA MOV DS, AX MOV DX, OFFSET STRING MOV AH, 9 INT 21H MOV AX, 4C00H INT 21H CODE ENDS STACK SEGMENT STACK DB 256 DUP(?) STACK ENDS END START 7.2 指令格式及寻址方式 一、指令格式 操作码:执行什么性质的操作; 操作数:对什么样的对象进行操作。 每条指令只有一个操作码,但可以有多个操作数,8086指令系统中,操作数的数目有0~2个 二、8086指令集 1 数据传送类指令 2 算术运算类指令 3 位操作类指令 4 控制转移类指令 5 串操作类指令 6 处理机控制类指令 传送指令MOV 语句格式:MOV OPD,OPS 功能:将源操作数传送入目的地址,源地址内容不变。即(OPS)→OPD。 例: MOV AX,03H MOV AX,X 数据交换指令XCHG 语句格式:XCHG OPD,OPS 功能:将源地址与目的地址中的内容互换。即(OPD)→OPS,(OPS)→OPD。 例 寄存器与存储器之间数据交换。 MOV AX,5678H ; MOV BX,0FFFFH ; XCHG AX,BX ; (AX)=0FFFFH ,( BX)=5678H 输入指令IN 从指定的外设寄存器取信息送入累加器。四种形式: (1)语句格式:IN AL,PORT    功能:(PORT) →AL (2)语句格式:IN AX,PORT    功能:(PORT) →AX (3)语句格式:IN AL,DX    功能:([DX]) →AL (4)语句格式:IN AX,DX    功能:([DX]) →AL 输出指令OUT 把累加器的内容送往指定的外设存储器,四种形式: (1)语句格式:OUT PORT,AL    功能:(AL) →PORT (2)语句格式:OUT PORT,AX    功能:(AX) →PORT (3)语句格式:OUT DX,AL    功能:(AL) →[DX] (4)语句格式:OUT DX,AX    功能:(AX) →[DX] 例: MOV AX,28H IN DATA_WORD,AX 把端口28的内容经过AX传送到存储单元DATA_WORD中。 加1指令 INC 语句格式:INC OPD 功能:将目的操作数加1,结果送目的地址。即(OPD)+1→OPD。 例:INC BX,即(BX)+1→BX。 可用于对计数器和地址指针进行调整。 减1指令DEC 加指令ADD 语句格式:ADD OPD, OPS 功能:将目的操作数与源操作数相加,结果存入目的地址中,源地址的内容不改变。 即(OPD)+(OPS)→OPD。 减指令SUB 带进位加指令ADC 语句格式:ADC OPD,OPS 功能:将目的操作数加源操作数再加低位进位,结果送目的地址。 即(OPD)+(OPS)+CF → OPD。 例 无符号双字加法运算 MOV AX,4652H ;(AX)=4652H ADD AX,0F0F0H ;(AX)=3742H,CF=1 MOV DX,0234H ;(DX)=0234H ADC DX,0F0F0H ;(DX)=0F325H,CF=0 求补指令NEG 语句格式:NEG OPD 功能:将目的操作数的每一位求反(包括符号位)后加1,结果送目的地址。 即(OPD)+1→OPD。 例 求补运算。 MOV AX,0FF64H

文档评论(0)

mkt361 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档