第2章_编写简单汇编程序.ppt

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

主要内容;2.1 常量、变量、标号、表达式;硬指令和伪指令;常量;常量;变量;标号;运算符和表达式 ;运算符和表达式 ;运算符和表达式 ;运算符和表达式;2.2 常量和变量的定义;常量的定义;符号定义 DosWriteChar equ 2 CarriageReturn = 13 CallDOS equ int 21h 符号应用(左边程序段等价右侧的符号形式) mov ah,2 ;mov ah,DosWriteChar mov dl,13 ;mov dl,CarriageReturn int 21h ;CallDOS;变量定义;DUP伪操作符;变量定义伪指令助记符;定义字节单元伪指令DB;定义字单元伪指令DW;定义双字单元伪指令DD;DQ与DT伪指令;例:数据定义综合应用;属性运算;; .date array db 45,45h .code mov ax,seg array mov ds,ax mov bx,offset array ;等价于 lea bx,array mov ax,es:[2000h];修改属性的运算符和伪指令;例:属性修改; .model small .stack .data v_byte equ this byte v_word dw 3332h,3735h target dw 5 dup(20h) crlf db 0dh,0ah,$ flag db 0 n_point dw offset s_label ;取得标号s_label的偏移地址 .code .startup mov al,byte ptr v_word dec al mov v_byte,al n_label: cmp flag,1 jz s_label ;flag单元为1转移 inc flag jmp short n_label ;进行短转移;s_label: cmp flag,2 jz next ;flag单元为2转移 inc flag jmp n_point;段内的存储器间接寻址,转移到s_label标号处 next: mov ax,type v_word ;汇编结果为mov ax,2 mov cx,length target ;汇编结果为mov cx,5 mov si,offset target w_again: mov [si],ax ;对字单元操作 inc si ;SI指针加2 inc si loop w_again ;循环 mov cx,size target ;汇编结果为 mov cx,0ah mov al,? mov di,offset target b_again: mov [di],al ;对字节单元操作 inc di ;DI指针加1 loop b_again ;循环 mov dx,offset v_word;显示结果:1357?????????? mov ah,9 int 21h .exit 0 end;2.3 数据寻址方式; 立即寻址;【例】 ; 寄存器寻址;【例】 ;有效地址;1 直接寻址;【例】 ;2 寄存器间接寻址;执行指令:MOV AX ,[BP] 执行后:(AX)=?,(BP)=?,(SS)=?,(20030H)=? 图形表示如下: ;应用; 1 寄存器相对寻址;【例】 ;应用;2 基址加变址寻址;【例】;1 相对基址加变址寻址;【例】;3 比例变址寻址(386以上的机型) ;【例】;4 基址比例变址寻址;【例】;2 相对基址比例变址寻址;【例】;跨段问题;【例】跨段前缀示例。 ;小结:;2.4 基本指令;通用数据传送指令;传送指令MOV;传送指令MOV;数据交换指令XCHG;查表转换指令 XLA;地址传送指令;传送偏移地址指令 LEA;传送偏移地址及数据段首址指令LDS; 传送偏移地址及附加数据段指令LES;算术运算类指令;加法运算;加1指令 INC;加指令ADD;语句格式:ADC OPD,OPS 影响的标志:AF、ZF、SF、PF、OF、CF 功能:将目的操作数加源操作数再加低位进位,结果送目的地址。即(OPD)+(OPS)+CF → OPD。 源操作数可是立即数、寄存器、存储器;目的操作数可是寄存器、存储器 ADC指令主要与ADD配合,实现多精度加法运算 【例】无符号双字加法运算。 MOV AX,4654H ;(AX)=4654H ADD AX,0F0F0H ;(AX)=3744H,CF=1 MOV DX,0434H ;(DX)=0434H ADC DX,0F0F0H ;(DX)=0F

文档评论(0)

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

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

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档