汇编语言期末总结(小抄必备)

时间:2024.4.27

执行部件(EU)主要由算术逻辑运算单元(ALU)、标志寄存器FR、通用寄存器组和EU控制器等4个部件组成,其主要功能是执行指令。

总线接口部件(BIU)主要由地址加法器、专用寄存器组、指令队列和总线控制电路等4个部件组成,其主要功能是形成访问存储器的物理地址、访问存储器并取指令暂存到指令队列中等待执行,访问存储器或I/O端口读取操作数参加EU运算或存放运算结果等

? CF(Carry Flag):进位标志位

CF=l,表示本次运算中最高位(D15或D7)有进位(加法运算时)或有借位(减法运算时)。CF标志可通过STC指令置位,通过CLC指令复位(清除进位标志),还可通过CMC指令将当前CF标志取反。

? PF(Parity Flag):奇偶校验标志位

PF=1,表示本次运算结果中有偶数个“l”,PF=0,表示本次运算结果中有奇数个“1”。

? AF(Auxiliary Carry Flag):辅助进位标志位。AF=l,表示运算结果的8位数据中,低4

位向高4位有进位(加法运算时)或有借位(减法运算时),这个标志位只在十进制运算中有用。

? ZF(Zero Flag):零标志位

ZF=1,表示本次运算结果为零,否则即运算结果非零时,ZF=0。

? SF(Sign Flag):符号标志

SF=1,表示本次运算结果的最高位(第7位或第15位)为“l”,否则SF=0。

? OF(Overflow F1ag):溢出标志

? IF(Interrupt Flag):中断标志位

IF=1,表示允许CPU响应可屏蔽中断。IF标志可通过STI指令置位,也可通过CLI指令复位。

? DF(Direction Flag):方向标志位

在串操作指令中,若DF=0,表示串操作指令地址指针自动增量;DF=1,表示地址指针自动减量。DF标志位可通过STD指令置位,也可通过CLD指令复位。

? TF(Trap Flag):单步标志位

寻址方式

1. 立即寻址

2寄存器寻址

3直接寻址

4寄存器间接寻址

5、基址/变址寻址 当使用BX或BP寄存器时,称基址寻址;使用SI或DI寄存器时,称变址寻址

6、基址加变址寻址

7、其他

A、隐含寻址

B、串寻址 源操作数的逻辑地址为DS:SI;目的操作数的逻辑地址为ES:DI

c、I/O(输入/输出)端口寻址

(1) 直接端口寻址方式。

(2) 采用DX寄存器间接寻址方式

(3) 输入指令中目的操作数可为AL或

AX;输出指令中源操作数可为AL或AX。

1、通用数据传送指令

1) 、MOV 传送指令 目的操作数不能为CS

2) PUSH 进栈指令 SP-2

3) POP 出栈指令 目的操作数不能为CS SP+2

4) XCHG 交换指令 操作数不能为立即数; 源和目的不能同时为存储单元; 段寄存

器不能作为操作数。

2、累加器专用传送指令

1) IN 输入指令

指令格式为: IN AL , n

IN AX , n

IN AL , DX

IN AX , DX

2)OUT 输出指令

指令格式为: OUT n , AL

OUT n , AX

OUT DX , AL

OUT DX , AX

3) XLAT 换码指令

3、目标地址传送指令

1)LEA 有效地址传送到寄存器

2)LDS 装入一个新的物理地址

3)LES 装入一个新的物理地址

4、标志寄存器传送指令

1)LAHF FR寄存器的低8位送AH

2)SAHF AH 送 FR寄存器的低8位

3)PUSHF FR寄存器推入堆栈

4)POPF 从栈顶中弹出存入FR寄存器

汇编语言期末总结小抄必备

二、算术运算指令

1、算术加法指令

? 1) ADD 算术加法

? 2)ADC 带进位算术加法

指令功能:目的地?目的操作数+源操作数+CF ? 3)INC 加1指令

指令功能:目的地?目的操作数+1

4) DAA 对压缩BCD数加法操作的结果进行校正 指令功能:对AL寄存器的内容进行十进制调整

? 5) AAA 对非压缩BCD数加法操作的结果进行校正 指令功能:对AL寄存器的内容进行十进制调整

2、算术减法指令

1) SUB 算术减法

指令功能:目的地?目的操作数-源操作数

2) SBB 带进位算术减法

指令功能:目的地?目的操作数-源操作数-CF

3) DEC 减1指令

指令功能:目的地?目的操作数-1

4) DAS 对压缩BCD数减法操作的结果进行校正 指令功能:对AL寄存器的内容进行十进制调整

5) AAS 对非压缩BCD数减法操作的结果进行校正 指令功能:对AL寄存器的内容进行十进制调整

6) CMP 比较指令

指令功能:两个操作数相减,不产生运算结果仅影响标志

7) NEG 取补指令

指令功能:0-目的操作数

3、算术乘法指令

1) MUL 无符号数乘法

指令功能:完成两个操作数相乘

MUL OPRD;

AL*OPRD->AX AX*OPRD->DX AX OPRD: R, MEM

汇编语言期末总结小抄必备

2) IMUL 带符号数乘法

指令功能:完成两个操作数相乘

3) AAM 非压缩BCD数乘法操作结果校正

指令功能:完成两个非压缩BCD数乘法结果的十进制数调整

4、算术除法指令

? DIV 无符号数除法

指令功能:完成两个操作数相除

DIV OPRD

AX/OPRD?AL:商,AH:余数

DXAX/OPRD? AX:商,DX:余数

? IDIV 带符号数除法

指令功能:完成两个操作数相除

另外还有:

CBW 带符号数字节扩展、

CWD 带符号数字扩展、

AAD 非压缩BCD数除法校正

三、位操作指令

指令的共同点是:

(1) 可以按二进制位进行操作;

(2)逻辑运算指令按逻辑门电路的运算规则,

(3) 逻辑移位指令有左移和右移,移出的位都

进入CF标志

(4)因移空位的补充方式不同有多种指令形 式

(5)逻辑移位指令中,移动超过1次则用CL寄 存器做计数器

(6) 执行逻辑操作指令,CF均被清0

1、 逻辑运算指令

2、 1) NOT 逻辑求反

3、 指令功能:将8位、16位寄存器或存储器内容求反

4、 2) AND 逻辑与操作

5、 指令功能:将8位、16位寄存器或存储器内容和源操作数“与”

6、 3) OR 逻辑或操作

7、 指令功能:将8位、16位寄存器或存储器内容和源操作数“或”

8、 4)XOR 逻辑异或操作

9、 指令功能:将8位、16位寄存器或存储器内容和源操作数“异或”

10、 5)TEST 测试指令

11、 指令功能:将8位、16位寄存器或存储器内容和源操作数“与”不产生运算结果,仅影响状态标志

AND 可以使指定位为0

OR 可以使指定位为1

XOR 可以使指定位为非

2、逻辑移位指令

1)SHL 逻辑左移 ,

指令功能:将8位、16位寄存器或存储器内容左移,移空的位补0 SHL OPRD, 1

OR

SHL OPRD,CL

2)SAL 算术左移

指令功能:将8位、16位寄存器或存储器内容左移,移空的位补0

3)SHR 逻辑右移

指令功能:将8位、16位寄存器或存储器内容右移,移空的位补0

4)SAR 算术右移

指令功能:将8位、16位寄存器或存储器内容右移,移空的位由最高位补充。

5)ROL 不带进位循环左移

指令功能:将8位、16位寄存器或存储器内容左移,移空的位由移出位补充。

6)ROR 不带进位循环右移

指令功能:将8位、16位寄存器或存储器内容右移,移空的位由移出位补充

7)RCL 带进位循环左移

指令功能:将8位、16位寄存器或存储器内容左移,移空的位由CF位补充。

8)RCR 带进位循环右移

指令功能:将8位、16位寄存器或存储器内容右移,移空的位由CF位补充。

四、串处理指令

? 源操作数指针 DS:SI,

目的操作数指针 ES:DI

? 每操作一次SI,DI修改一次,方向由DF控制

? 重复操作的退出

? cx控制

? 条件控制(ZF标志)

? 1、串传送指令 MOVSB / MOVSW

? 2、串比较指令 CMPSB/COMPSW

? 3、串搜索指令 SCASB/SCASW

? 4、串装入指令 LODSB/LODSW

? 5、串存储指令 STOSB/STOSB

? 6、指令前缀

? REP、REPZ/REPE、REPNZ/REPNE

五、程序控制转移指令

1、无条件转移指令

JMP 目标地址

1)、段内直接转移

JMP LABEL IP+位移量->IP

位移量=LABEL指令地址-JMP地址-3

2)、短转移指令

JMP LABEL

IP+CBW(位移量)->IP

位移量(8bit)=LABEL指令地址-JMP地址-2

3)、段内间接转移

JMP OPRD;

OPRD ->IP

OPRD:r,MEM

JMP AX

3)、段间直接转移

JMP far LABEL

offest LABEL ->IP

seg LABEL ->cs

4)、段间间接转移

JMP OPRD; OPRD:MEM

offest OPRD ->IP

seg OPRD ->cs

JMP DWORD PTR [SI]

2)用于无符号数的条件转移指令

① JA/JNBE ;高于/不低于等于转移,CF∨ZF=0 ② JNA/JBE ;不高于/低于等于转移,CF∨ZF=1 ③ JB/JNAE ;低于/不高于等于转移,CF=1 ④ JNB/JAE ;不低于/高于等于转移,CF=0

3)用于带符号数的条件转移指令

① JG/JNLE

;大于/不小于等于转移,(SF ∨OF)∨ ZF=0 ② JGE/JNL

;大于等于/不小于转移,(SF ∨OF)=0 ③ JL/JNGE

;小于/不大于等于转移,(SF ∨OF)=1 ④ JLE/JNG

;小于等于/不大于转移,(SF ∨OF)∨ ZF=1

5、中断指令和中断返回指令

1)INT n 中断指令

2)INTO 溢出中断指令

3)IRET 中断返回指令

六、处理器控制指令

1、标志控制指令

STC ;使CF 置1

CLC ;使CF 清0

CMC ;使CF 取反

STD ;使DF 置1

CLD ;使DF 清0

STI ;使IF置1

CLI ;使IF 清0

2、外同步指令

?

?

?

?

? HLT 处理器暂停指令 WAIT 等待指令 ESC 换码指令/交权指令 LOCK 总线封锁指令 NOP 空操作指令

存储器操作数的属性有三种:段值、段内偏移量和类型。 ? 过程定义语句

过程名 PROC NEAR/FAR

……

RET

? 一、宏定义和宏调用

? 1、格式 过程名 ENDP

宏指令名 macro [参数表]

… ;宏定义体

endm

1、8255A的工作方式

8255A有三种工作方式,它们是:

①方式0——基本输入/输出方式;

②方式1——选通输入/输出方式;

⑨方式2—一双向传送方式。

1.方式控制字

1、8255A工作在方式0

1、8255A工作在方式0

试编一程序要求七段发光二班管显示开关所拨通的数字 地址

A口:8020H, B口:8022H,

C口:8024H, 控制口:8026H.

方式控制字

汇编语言期末总结小抄必备

10011001B=99H

四、 8253的编程

8253只有一个控制字,8253的一个方式控制字只决定一个计数通道的工作模式。8253的控制字格式如图所示。共分为4部分,通道选择、计数器读/写方式、工作方式和计数码的选择。

汇编语言期末总结小抄必备

中断条件

中断屏蔽触发器处于非屏蔽状态;中断允许触发器处于开中断状态

CPU响应可屏蔽中断申请必须满足的3个条件:

① 无总线请求; ② CPU被允许中断; ③ CPU执行完现行指令. CPU响应中断后要自动完成三项任务

1、 关闭中断; 2、CS、IP以及FR的内容推入堆栈; 3、中断服务程序段地址送CS中,

偏移地址送IP中。 确定中断源的方法被称为中断源识别或中断方式

1、 确定中断源, 2、找到该中断服务程序的首地址。 一、 查询中断 二、矢量中断 中断申请信号INTR和中断响应信号INTA是一对握手信号

一类是由外部设备产生的中断,我们称之为硬件中断(外中断)。对于硬件中断,又分为不可屏蔽中断和可屏蔽中断(中断允许触发器IF)

另一类是由指令在某种运行结果时产生的中断,我们称之为软件中断(除法中断 溢出中断 单步中断和断点中断 软中断)

8086CPU的中断优先权排列从高到低为:

1、除法出错中断,溢出中断,INT n; 2、NMl; 3、INTR;

4、单步中断。

汇编语言期末总结小抄必备

汇编语言期末总结小抄必备


第二篇:汇编语言重点知识总结


汇编语言重点知识总结

汇编速查手册 汇编语言总结 概要

寄存器与存储器

1. 寄存器功能

. 寄存器的一般用途和专用用途

. CS:IP 控制程序执行流程

. SS:SP 提供堆栈栈顶单元地址

. DS:BX(SI,DI) 提供数据段内单元地址

. SS:BP 提供堆栈内单元地址

. ES:BX(SI,DI) 提供附加段内单元地址

. AX,CX,BX和CX寄存器多用于运算和暂存中间计算结果,但又专用于某些指令(查阅 指令表)。

. PSW程序状态字寄存器只能通过专用指令(LAHF, SAHF)和堆栈(PUSHF,POPF)进行存取。

2. 存储器分段管理

. 解决了16位寄存器构成20位地址的问题

. 便于程序重定位

. 20位物理地址=段地址 * 16 + 偏移地址

. 程序分段组织: 一般由代码段,堆栈段,数据段和附加段组成,不设置堆栈段时 则使用系统内部的堆栈。

3. 堆栈

. 堆栈是一种先进后出的数据结构 , 数据的存取在栈顶进行 , 数据入栈使堆栈向地址减小的方向扩展。

. 堆栈常用于保存子程序调用和中断响应时的断点以及暂存数据或中间计算结果 。 . 堆栈总是以字为单位存取

指令系统与寻址方式

1. 指令系统

. 计算机提供给用户使用的机器指令集称为指令系统,大多数指令为双操作数指令。执行指令后,一般源操作数不变,目的操作数被计算结果替代。

. 机器指令由CPU执行,完成某种运算或操作,8086/8088指令系统中的指令分为6类: 数据传送,算术运算,逻辑运算,串操作,控制转移和处理机控制。

2. 寻址方式

. 寻址方式确定执行指令时获得操作数地址的方法

. 分为与数据有关的寻址方式(7种)和与转移地址有关的寻址方式(4)种。

. 与数据有关的寻址方式的一般用途:

(1) 立即数寻址方式--将常量赋给寄存器或存储单元

(2) 直接寻址方式--存取单个变量

(3) 寄存器寻址方式--访问寄存器的速度快于访问存储单元的速度

(4) 寄存器间接寻址方式--访问数组元素

(5) 变址寻址方式

(6) 基址变址寻址方式

(7) 相对基址变址寻址方式

(5),(6),(7)都便于处理数组元素

. 与数据有关的寻址方式中,提供地址的寄存器只能是BX,SI,DI或BP

. 与转移地址有关的寻址方式的一般用途:

(1) 段内直接寻址--段内直接转移或子程序调用

(2) 段内间接寻址--段内间接转移或子程序调用

(3) 段间直接寻址--段间直接转移或子程序调用

(4) 段间间接寻址--段间间接转移或子程序调用

汇编程序和汇编语言

1. 汇编程序

. 汇编程序是将汇编语言源程序翻译成二进制代码程序的语言处理程序,翻译的过程称为汇编。

2. 汇编语言

. 汇编语言是用指令助记符,各种标识变量,地址,过程等的标识符书写程序的语言, 汇编语言指令与机器指令一 一对应。

. 伪指令,宏指令不是由CPU执行的指令,而是由汇编程序在汇编期间处理的指令。 . 伪指令指示汇编程序如何完成数据定义,存储空间分配,组织段等工作。

. 宏指令可简化程序并减少程序书写量。

. 条件汇编伪指令的功能是确定是否汇编某段源程序,而不是实现程序分支,对未汇编的程序将不产生相应的目标代码。

. 结构作为一种数据结构可将一组类型不同但有逻辑关联的数据组织在一起,便于 整体处理数据。

. 记录可用于提高存储单元的利用率,将若干不足一个字节或字且有逻辑关联的信 息压缩存放在一个字节或字中。

. 指令中的表达式在汇编期间计算,并且只能对常量或地址进行计算。

程序设计基础

1. 分支程序设计

. 程序分支由条件转移指令或无条件转移指令实现

. 存放若干目的转移地址或跳转指令的跳转表常用于实现多路分支

. 条件转移指令只能实现偏移量为-128至+127字节范围的转移

. 无条件转移指令根据寻址方式可实现短转移(偏移量为-128至+127字节),段内转 移,段间转移。

2. 循环程序设计

. 可由循环控制指令或条件转移指令组织循环结构

. 内层循环结构必须完全包含在外层循环结构内,并不能发生从循环结构外向循环 结构内的转移。

3. 子程序设计

. 子程序中应保护寄存器内容,并正确使用堆栈, 成对执行PUSH和POP指令,保证执行RET指令时堆栈栈顶为返回地址。

. 主程序可通过寄存器,参数表,或堆栈传递参数给子程序

4. EXE文件和COM文件

. 二者都是可执行文件

. COM文件源程序的特点是: 第一条可执行指令的起始存放地址必须是100H,不能分段,不用定义堆栈,所有过程为NEAR类型,直接用INT 20H 指令返回DOS。

5. DOS功能调用与BIOS中断调用

. 二者都是完成DOS系统提供给用户的输入/输出等常用功能,通过执行软中断指令 完成一次软中断服务。

. DOS功能调用的中断服务程序是操作系统的一部分,存于RAM中; 而BIOS中断调用的中断服务程序存放在ROM中。

输入/输出与中断系统

1. 输入/输出的方式

. 程序直接I/O方式: 用IN和OUT指令直接在端口级上进行I/O操作,数据传送方式 分为无条件传送方式和查询传送方式。

. 中断传送方式: 由CPU响应中断请求完成中断服务。

. DMA传送方式: 直接在存储器与外设之间传送数据。

2. 有关中断的概念

. 中断、中断源、中断请求、中断服务、中断向量、中断向量表、中断响应过程、中断指令、开中断、关中断、内部中断、外部中断、可屏蔽中断、非屏蔽中断。

3. 键盘I/O、显示器I/O操作

. 键盘的输入操作用BIOS的16H中断调用控制,也可直接访问60H端口(数据端口), 61H端口(状态端口)检测键盘的按键操作。

. 对于特殊键(如Shift , Ctrl , Alt , NumLock , ScrollLock等键)的按动情况,可以直接从来40:17H单元取得有关信息。

. 显示器的图形显示可以用BIOS的10H中断调用实现,另一种速度更快的方法是直 接读写视频缓冲区。

4. 打印机I/O操作由 INT 17H中断调用实现, 串行通讯口操作由 INT 14H中断调用实现。

CLD Clear the direction flag (set to forward direction)

将方向标志置0,使si和di增量,串处理从低地址向高地址处理

8088 汇编速查手册

一、数据传输指令

它们在存贮器和寄存器、寄存器和输入输出端口之间传送数据.

1. 通用数据传送指令.

MOV 传送字或字节.

MOVSX 先符号扩展,再传送.

MOVZX 先零扩展,再传送.

PUSH 把字压入堆栈.

POP 把字弹出堆栈.

PUSHA 把AX,CX,DX,BX,SP,BP,SI,DI依次压入堆栈.

POPA 把DI,SI,BP,SP,BX,DX,CX,AX依次弹出堆栈.

PUSHAD 把EAX,ECX,EDX, EBX,ESP,EBP,ESI,EDI依次压入堆栈.

POPAD 把EDI,ESI,EBP,ESP,EBX,EDX, ECX,EAX依次弹出堆栈.

BSWAP 交换32位寄存器里字节的顺序

XCHG 交换字或字节.( 至少有一个操作数为寄存器,段寄存器不可作为操作数) CMPXCHG 比较并交换操作数.( 第二个操作数必须为累加器AL/AX/EAX ) XADD 先交换再累加.( 结果在第一个操作数里 )

XLAT 字节查表转换.

── BX 指向一张 256 字节的表的起点, AL 为表的索引值 (0-255,即0-FFH); 返回 AL 为查表结果. ( [BX+AL]->AL )

2. 输入输出端口传送指令.

IN I/O端口输入. ( 语法: IN 累加器, {端口号│DX} )

OUT I/O端口输出. ( 语法: OUT {端口号│DX},累加器 )

输入输出端口由立即方式指定时, 其范围是 0-255; 由寄存器 DX 指定时,其范围是 0-65535.

3. 目的地址传送指令.

LEA 装入有效地址.

例: LEA DX,string ;把偏移地址存到DX.

LDS 传送目标指针,把指针内容装入DS.

例: LDS SI,string ;把段地址:偏移地址存到DS:SI.

LES 传送目标指针,把指针内容装入ES.

例: LES DI,string ;把段地址:偏移地址存到ES:DI.

LFS 传送目标指针,把指针内容装入FS.

例: LFS DI,string ;把段地址:偏移地址存到FS:DI.

LGS 传送目标指针,把指针内容装入GS.

例: LGS DI,string ;把段地址:偏移地址存到GS:DI.

LSS 传送目标指针,把指针内容装入SS.

例: LSS DI,string ;把段地址:偏移地址存到SS:DI.

4. 标志传送指令.

LAHF 标志寄存器传送,把标志装入AH.

SAHF 标志寄存器传送,把 AH内容装入标志寄存器.

PUSHF 标志入栈.

POPF 标志出栈.

PUSHD 32位标志入栈.

POPD 32位标志出栈.

二、算术运算指令

ADD 加法.

ADC 带进位加法.

INC 加 1.

AAA 加法的ASCII码调整.

DAA 加法的十进制调整.

SUB 减法.

SBB 带借位减法.

DEC 减 1.

NEC 求反(以 0 减之).

CMP 比较.(两操作数作减法,仅修改标志位,不回送结果). AAS 减法的 ASCII码调整.

DAS 减法的十进制调整.

MUL 无符号乘法.

IMUL 整数乘法.

以上两条,结果回送AH和AL(字节运算),或DX和AX(字运算), AAM 乘法的ASCII码调整.

DIV 无符号除法.

IDIV 整数除法.

以上两条,结果回送:

商回送AL,余数回送AH, (字节运算);

或 商回送AX,余数回送DX, (字运算).

AAD 除法的ASCII码调整.

CBW 字节转换为字. (把AL中字节的符号扩展到AH中去) CWD 字转换为双字. (把AX中的字的符号扩展到DX中去) CWDE 字转换为双字. (把AX中的字符号扩展到EAX中去) CDQ 双字扩展. (把EAX中的字的符号扩展到EDX中去)

三、逻辑运算指令

AND 与运算.

OR 或运算.

XOR 异或运算.

NOT 取反.

TEST 测试.(两操作数作与运算,仅修改标志位,不回送结果). SHL 逻辑左移.

SAL 算术左移.(=SHL)

SHR 逻辑右移.

SAR 算术右移.(=SHR)

ROL 循环左移.

ROR 循环右移.

RCL 通过进位的循环左移.

RCR 通过进位的循环右移.

以上八种移位指令,其移位次数可达255次.

移位一次时, 可直接用操作码. 如 SHL AX,1.

移位>1次时, 则由寄存器CL给出移位次数.

如 MOV CL,04

SHL AX,CL

四、串指令

DS:SI 源串段寄存器 :源串变址.

ES:DI 目标串段寄存器:目标串变址.

CX 重复次数计数器.

AL/AX 扫描值.

D标志 0表示重复操作中SI和DI应自动增量; 1表示应自动减量. Z标志 用来控制扫描或比较操作的结束.

MOVS 串传送.

( MOVSB 传送字符. MOVSW 传送字. MOVSD 传送双字. ) CMPS 串比较.

( CMPSB 比较字符. CMPSW 比较字. )

SCAS 串扫描.

把AL或AX的内容与目标串作比较,比较结果反映在标志位.

LODS 装入串.

把源串中的元素(字或字节)逐一装入AL或AX中.

( LODSB 传送字符. LODSW 传送字. LODSD 传送双字. ) STOS 保存串. 是LODS的逆过程.

REP 当CX/ECX<>0时重复.

REPE/REPZ 当ZF=1或比较结果相等,且 CX/ECX<>0时重复. REPNE/REPNZ 当ZF=0或比较结果不相等,且 CX/ECX<>0时重复. REPC 当CF=1且CX/ECX< >0时重复.

REPNC 当CF=0且CX/ECX<>0时重复.

五、程序转移指令

1>无条件转移指令 (长转移)

JMP 无条件转移指令

CALL 过程调用

RET/RETF过程返回.

2>条件转移指令 (短转移,-128到+127的距离内)

( 当且仅当(SF XOR OF)=1时,OP1<OP2 )

JA/JNBE 不小于或不等于时转移.

JAE/JNB 大于或等于转移.

JB/JNAE 小于转移.

JBE/JNA 小于或等于转移.

以上四条,测试无符号整数运算的结果(标志C和Z).

JG/JNLE 大于转移.

JGE/JNL 大于或等于转移.

JL/JNGE 小于转移.

JLE/JNG 小于或等于转移.

以上四条,测试带符号整数运算的结果(标志S,O和Z).

JE/JZ 等于转移.

JNE/JNZ 不等于时转移.

JC 有进位时转移.

JNC 无进位时转移.

JNO 不溢出时转移.

JNP/JPO 奇偶性为奇数时转移.

JNS 符号位为 "0" 时转移.

JO 溢出转移.

JP/JPE 奇偶性为偶数时转移.

JS 符号位为 "1" 时转移.

3>循环控制指令(短转移)

LOOP CX不为零时循环.

LOOPE/LOOPZ CX不为零且标志Z=1时循环.

LOOPNE/LOOPNZ CX 不为零且标志Z=0时循环.

JCXZ CX为零时转移.

JECXZ ECX 为零时转移.

4>中断指令

INT 中断指令

INTO 溢出中断

IRET 中断返回

5>处理器控制指令

HLT 处理器暂停, 直到出现中断或复位信号才继续.

WAIT 当芯片引线TEST为高电平时使CPU进入等待状态. ESC 转换到外处理器.

LOCK 封锁总线.

NOP 空操作.

STC 置进位标志位.

CLC 清进位标志位.

CMC 进位标志取反.

STD 置方向标志位.

CLD 清方向标志位.

STI 置中断允许位.

CLI 清中断允许位.

六、伪指令

DW 定义字(2字节).

PROC 定义过程.

ENDP 过程结束.

SEGMENT 定义段.

ASSUME 建立段寄存器寻址.

ENDS 段结束.

END 程序结束.

更多相关推荐:
汇编语言总结

汇编语言学习体会大一大二期间学写了一些高级语言,如C语言和C++。在对一些实际问题的编程处理上使用这些高级语言显得很是方便。于是在刚接触这门课的时候就对其实用性产生了怀疑和一些的抵触情绪。再学习了一段时间后,虽…

汇编语言学习心得

汇编学习心得08网工一班李锐0804031002在大三接触汇编语言之前我们在计算机组成原理课程中就已经有所了解了但也只是略微明白一些如jmpmov这样的指令极度缺乏系统性的学习在接触这门课程后感到汇编语言并不是...

《汇编语言程序设计》学习总结与心得

其实说实话在学这门课之前自己对汇编语言一点都不了解,只知道它也是一种语言,而且是一门很少用的语言,可能很多人都是这么想的,或许在学这门课之前不少同学也有和我当初一样的思想,大概学学就好,反正以后很少能用到,毕竟…

汇编语言学习心得

汇编语言程序设计学习总结与心得班级09计本3班学号0姓名刘得分本学期学习了汇编语言汇编语言是面向机器的程序设计语言在汇编语言中用助记符代替操作码用地址符号或标号代替地址码这样用符号代替机器语言的二进制码就把机器...

汇编语言概念总结

1指令对标志位的影响MOV指令不影响标志位PUSH和POP指令均不影响标志位输入输出指令INOUT换码指令XLAT不影响标志位LEA目的操作数使用寄存器不能使用段寄存器源操作数不能用立即数和寄存器不影响标志位C...

汇编语言个人学习总结

DOS的提示符下可如下键入Debug启动调试程序DEBUG路径文件名参数1参数2Debug后可以不带文件名仅运行Debug程序需要时再用N和L命令调入被调试程序命令中可以带有被调试程序的文件名则运行Debug的...

汇编语言实验心得

一实验内容1DEBUG的启动及其基本命令的使用2内存操作数与寻址方式1利用DEBUG程序中的E命令将两个多字节数12345678H和FEDCBA98H分别送入起始地址为DS0200H和DS0204H两个单元中2...

汇编语言考点总结

第一章基础知识一机器语言即机器指令机器可以正确执行的命令的集合二汇编语言的产生汇编指令是机器指令便于记忆的书写格式即助记符编译三汇编语言的组成汇编指令机器码的助记符伪指令由编译器执行其他符号由编译器识别四存储器...

汇编语言与接口技术要点总结

第二章微型计算机结构18086的段式存储结构段地址偏移量地址存储单元的物理地址或者段寄存器的值16偏移地址存储单元的物理地址2段寄存器通用寄存器指针与变址寄存器标志寄存器3寻址方式1寻址方式的概念2寻址方式的分...

《汇编语言》自己总结,第10章

101ret和retfret指令用栈中的数据修改IP的内容从而实现近转移相当于进行popIPretf指令用栈中的数据修改CS和IP的内容从而实现远转移相当于进行了popIPpopCS102call指令CPU执行...

汇编程序指令总结

汇编指令总结一数据传送指令14条1通用传送指令5条a基本传送指令MOV指令格式MOVdestsrcdestltsrc注意事项1操作数类型必须匹配2存储单元之间不能用MOV直接传送3CS和IP不能作为目的操作数C...

《汇编语言》自己总结,第6章

P123程序取得所需要的空间的方法有两种一是在加载程序的时候为程序分配二是程序在执行的过程中向系统申请这句话在C语言中经常出现有意思dw定义字型数据defineword用法dw0123h0234h345h数据之...

汇编语言总结(41篇)