汇编语言3-4

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
ASM
9ຫໍສະໝຸດ 第3章标志寄存器进出堆栈指令
POPF ;FLAGS←SS:[SP] ;SP←SP+2 POPF指令将栈顶字单元 内容送标志寄存器,同 时栈顶指针SP加2
PUSHF ;SP←SP-2 ;SS:[SP]←FLAGS PUSHF指令将标志寄存 器的内容压入堆栈, 同时栈顶指针SP减2
Page 108

3.3 3.10
ASM
18

ASM
16

第3章
CWD
类型转化指令: CWD 功能:字转化为双字
格式:AX的符号扩展至DX
;如AX的最高有效位是0,则DX=
00 ; AX 的 最 高 有 效 位 为 1 , 则 DX = FFFFH。AX不变
ASM
17

第3章

标志低字节进出AH指令
SAHF ;FLAGS的低字节←AH SAHF 将 AH 寄 存 器 内 容 送FLAGS的低字节 用AH的第7/6/4/2/0位 相 应 设 置 SF/ZF/AF/ PF/CF标志
LAHF ;AH←FLAGS的低字节 LAHF 指 令 将 标 志 寄 存 器的低字节送寄存器 AH SF/ZF/AF/PF/CF 状 态 标 志 位 分 别 送 入 AH 的 第7/6/4/2/0位,而AH 的第5/3/1位任意
ASM
7

第3章
(a) 标志寄存器传送
标志寄存器传送指令用来传送标志寄存
器FLAGS的内容,方便进行对各个标志 位的直接操作 有2对4条指令
低8位传送:LAHF和SAHF 16位传送:PUSHF和POPF
ASM
8

第3章
用于任意设置进位标志
CLC STC CMC
;复位进位标志:CF←0 ;置位进位标志:CF←1 ;求反进位标志:CF←~CF
ASM
13

第3章
方向标志操作指令
串操作指令中,需要使用 CLD STD
;复位方向标志:DF←0 ;置位方向标志:DF←1
ASM
14

指定的16位寄存器中
LEA r16,mem
;r16←mem的有效地址EA
例题13 ASM
2

第3章
指针传送指令
LES LSS LES r16,mem ;(r16)←(mem), ;(ES)←(mem+2) LES指令将主存中mem 指定的字送至r16, 并将mem的下一字送 ES寄存器
第3章
(3) 地址传送指令
地址传送指令将存储器单元的逻辑地址
送至指定的寄存器
有效地址传送指令
LEA 指针传送指令 LDS和LES LSS
注意不是获取存储器单元的内容
ASM
1

第3章
有效地址传送指令LEA(load EA)
LEA
将存储器操作数的有效地址传送至
例题12 ASM
10

第3章
(b) 标志位操作
标志位操作指令直接对CF、DF、IF标志
进行复位或置位,常用于特定的情况 对标志位进行设置的指令
CLC CLD CLI
STC STD STI
CMC
ASM
12

第3章
进位标志操作指令
第3章
中断标志操作指令
在编写中断服务程序时,需要控制可
屏蔽中断的允许和禁止 CLI STI
;复位中断标志:DF←0 ;置位中断标志:DF←1
ASM
15

第3章
(5)类型转化指令
类型转化指令: CBW 功能:字节转化为字 格式:CBW 操作:将AL中的内容符号扩展到AH,形 成AX中的字。 (如果(AL最高有效位为0,则(AH)=0; 如果(AL)的最高有效位为1,则(AH) =0ffh。)
例题14
指针传送指令有LDS
LDS r16,mem ;(r16)←(mem), ;(DS)←(mem+2) LDS指令将主存中mem 指定的字送至r16, 并将mem的下一字送 DS寄存器
ASM
5

第3章
(4) 标志传送指令
标志寄存器传送指令用来传送标志寄存
器FLAGS的内容 标志位操作指令直接对CF、DF、IF标志 进行复位或置位
相关文档
最新文档