`
zht1933
  • 浏览: 224496 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

汇编7——常用指令

阅读更多

高级语言经编译器编译生成后,最终会生成机器语言,汇编指令与机器语言又是对应的。所以汇编指令与高级语言语言定义存在一定的关系。

如:CALL、RET组合相当于方法调用。

LOOP、LOOPE、LOOPZ、LOOPNE、LOOPNZ、JCXZ、JECXZ循环执行指令。
INT、INTO、IRET中断,与并发执行和调试等有关。
—————————————————————————————————————

1.通用数据传送指令. 
MOV----> move 
MOVSX---->extended move with sign data 
MOVZX---->extended move with zero data 
PUSH---->push 
POP---->pop 
PUSHA---->push all 
POPA---->pop all 
PUSHAD---->push all data 
POPAD---->pop all data 
BSWAP---->byte swap 
XCHG---->exchange 
CMPXCHG---->compare and change 
XADD---->exchange and add 
XLAT---->translate 
2.输入输出端口传送指令. 
IN---->input 
OUT---->output 
3.目的地址传送指令. 
LEA---->load effective address 
LDS---->load DS 
LES---->load ES 
LFS---->load FS 
LGS---->load GS 
LSS---->load SS 
4.标志传送指令. 
LAHF---->load AH from flag 
SAHF---->save AH to flag 
PUSHF---->push flag 
POPF---->pop flag 
PUSHD---->push dflag 
POPD---->pop dflag 

二、算术运算指令 
——————————————————————————————————————— 
ADD---->add 
ADC---->add with carry 
INC---->increase 1 
AAA---->ascii add with adjust 
DAA---->decimal add with adjust 
SUB---->substract 
SBB---->substract with borrow 
DEC---->decrease 1 
NEC---->negative 
CMP---->compare 
AAS---->ascii adjust on substract 
DAS---->decimal adjust on substract 
MUL---->multiplication 
IMUL---->integer multiplication 
AAM---->ascii adjust on multiplication 
DIV---->divide 
IDIV---->integer divide 
AAD---->ascii adjust on divide 
CBW---->change byte to word 
CWD---->change word to double word 
CWDE---->change word to double word with sign to EAX 
CDQ---->change double word to quadrate word 

三、逻辑运算指令 
——————————————————————————————————————— 
AND---->and 
OR---->or 
XOR---->xor 
NOT---->not 
TEST---->test 
SHL---->shift left 
SAL---->arithmatic shift left 
SHR---->shift right 
SAR---->arithmatic shift right 
ROL---->rotate left 
ROR---->rotate right 
RCL---->rotate left with carry 
RCR---->rotate right with carry 

四、串指令 
——————————————————————————————————————— 
MOVS---->move string 
CMPS---->compare string 
SCAS---->scan string 
LODS---->load string 
STOS---->store string 
REP---->repeat 
REPE---->repeat when equal 
REPZ---->repeat when zero flag 
REPNE---->repeat when not equal 
REPNZ---->repeat when zero flag 
REPC---->repeat when carry flag 
REPNC---->repeat when not carry flag 

五、程序转移指令 
——————————————————————————————————————— 
1>无条件转移指令(长转移) 
JMP---->jump 
CALL---->call 
RET---->return 
RETF---->return far 
2>条件转移指令(短转移,-128到+127的距离内) 
JAE---->jump when above or equal 
JNB---->jump when not below 
JB---->jump when below 
JNAE---->jump when not above or equal 
JBE---->jump when below or equal 
JNA---->jump when not above 
JG---->jump when greater 
JNLE---->jump when not less or equal 
JGE---->jump when greater or equal 
JNL---->jump when not less 
JL---->jump when less 
JNGE---->jump when not greater or equal 
JLE---->jump when less or equal 
JNG---->jump when not greater 
JE---->jump when equal 
JZ---->jump when has zero flag 
JNE---->jump when not equal 
JNZ---->jump when not has zero flag 
JC---->jump when has carry flag 
JNC---->jump when not has carry flag 
JNO---->jump when not has overflow flag 
JNP---->jump when not has parity flag 
JPO---->jump when parity flag is odd 
JNS---->jump when not has sign flag 
JO---->jump when has overflow flag 
JP---->jump when has parity flag 
JPE---->jump when parity flag is even 
JS---->jump when has sign flag 
3>循环控制指令(短转移) 
LOOP---->loop 
LOOPE---->loop equal 
LOOPZ---->loop zero 
LOOPNE---->loop not equal 
LOOPNZ---->loop not zero 
JCXZ---->jump when CX is zero 
JECXZ---->jump when ECX is zero 
4>中断指令 
INT---->interrupt 
INTO---->overflow interrupt 
IRET---->interrupt return 
5>处理器控制指令 
HLT---->halt 
WAIT---->wait 
ESC---->escape 
LOCK---->lock 
NOP---->no operation 
STC---->set carry 
CLC---->clear carry 
CMC---->carry make change 
STD---->set direction 
CLD---->clear direction 
STI---->set interrupt 
CLI---->clear interrupt 

六、伪指令 
————————————————————————————————————— 
DW---->definw word 
PROC---->procedure 
ENDP---->end of procedure 
SEGMENT---->segment 
ASSUME---->assume 
ENDS---->end segment 
END---->end 
分享到:
评论

相关推荐

    汇编语言——计算机科学技术

    《汇编语言——计算机科学技术》 汇编语言是计算机科学中的一个重要组成部分,它是一种低级编程语言,直接对应于计算机硬件的指令集。在计算机的世界里,机器理解的语言是二进制代码,由0和1组成,而汇编语言则是...

    汇编教程——关于汇编的一个较好的文章

    ### 汇编教程——关于汇编的一个较好的文章:深入解析Win32汇编与操作系统交互 #### 一、理解Win32与DOS的区别 在深入探讨Win32汇编之前,我们首先需要理解Win32环境与早期的DOS(磁盘操作系统)之间的根本区别。...

    arm汇编指令集 ——基于arm汇编的指令

    数据处理指令用于进行算术运算和逻辑运算,是ARM指令集中最常用的部分之一。 - **LDR/STR**:加载/存储指令,用于从内存读取数据到寄存器或将寄存器中的数据写入内存。 - **LDM/STM**:多寄存器加载/存储指令,可以...

    GDB调试使用手册——常用命令,命令分类详解,调试举例

    #### 一、常用命令概述 GDB(GNU调试器)是一款强大的开源调试工具,用于调试C、C++等语言编写的程序。本文档旨在详细介绍GDB的一些常用命令及其应用场景,帮助开发者更高效地进行程序调试。 1. **backtrace (bt ...

    汇编语言常用指令

    ### 汇编语言常用指令详解 #### MOV指令——数据移动 MOV指令是汇编语言中最基础也是最常用的指令之一,用于将一个操作数的值移动到另一个操作数中。其基本格式为`MOV dst, src`,其中`dst`(目的地)和`src`(来源...

    汇编语言编程调试教程

    附录1—— 汇编语言编程和调试工具 介绍两个常用的汇编语言编程环境Masm V6.11和Turbo Assember V5.0,着重讲解了如何设置系统参数,如何运用符号跟踪功能。 :解压(WinRAR)、Masm V6.11和Turbo Assember V5.0 ...

    汇编语言常用工具下载

    这样的文档对于初学者来说极其宝贵,因为它可能涵盖汇编语法、指令集、常用技巧等内容,帮助读者快速掌握汇编语言的基础知识。通过阅读和学习asmedu.htm,用户不仅能理解汇编语言的基本概念,还能了解到如何使用MASM...

    汇编课程设计——用汇编语言进行十六进制四则运算

    汇编语言是一种低级编程语言,它直接对应于计算机的机器指令,每一个指令都与特定的机器硬件操作相对应。在本课程设计中,重点是用汇编语言进行十六进制四则运算。汇编语言虽然编程难度较大,但其直接控制硬件的能力...

    黑客————脱壳常用方法总结

    ### 黑客——脱壳常用方法总结 在网络安全与反病毒领域,“脱壳”是一种重要的技术,用于分析被加壳的恶意软件或受保护程序的真实功能。加壳技术常被用作防止逆向工程,使恶意软件更难被检测和分析。本文将深入探讨...

    51MCS——汇编.pdf

    ### 51系列单片机汇编语言常用指令与伪指令详解 #### 一、概述 51系列单片机是广泛应用于各种嵌入式系统设计中的微控制器之一,其强大的功能和低廉的成本使其成为教育和工业应用领域的首选。本文档主要介绍了51系列...

    常用的汇编语言指令集 适合初学者

    ### 常用的汇编语言指令集 适合初学者 #### 概述 本文将详细介绍一系列基础且常用的汇编语言指令集,这些指令对于初学者来说是非常重要的基础知识。汇编语言是一种低级编程语言,它与特定类型的处理器架构紧密相关...

    编程开发技术——汇编语言详解

    汇编语言是计算机科学的基础,它是直接针对计算机硬件进行编程的一种低级语言。汇编语言的每一个指令都对应着...因此,即使不专门编写汇编程序,掌握汇编语言的基本概念和常用指令也能提升作为一个程序员的技能水平。

    汇编指令手册——英文全称解析

    本文将对汇编指令手册中常用的指令进行分类和解释,包括通用数据传送指令、算术运算指令、逻辑运算指令、串指令和程序跳转指令等。 通用数据传送指令 MOV指令是最基本的数据传送指令,MOV dst, src表示将src的值...

    汇编指令查询器 查询汇编语句

    《汇编指令查询器AsmFun 1.3——洞察汇编语言的神奇工具》 在计算机科学领域,汇编语言是一种低级编程语言,它与机器语言紧密相连,是程序员与硬件沟通的重要桥梁。汇编指令查询器AsmFun 1.3是一款专为学习和理解...

    汇编语言教程的电子书

    汇编语言电子书,详细介绍了汇编语言...附录3—— 各类常用中断功能说明 分类介绍各种中断的功能及其参数说明。 附录4—— DOS和BIOS的宏定义 附录5—— 键盘按键的各种编码对照表 附录6—— 几个重要内存单元地址

    常用ARM指令集及汇编

    ### 常用ARM指令集及汇编 #### ARM架构简介 ARM(Advanced RISC Machines)是一种基于精简指令集计算机(RISC)技术的架构,由英国ARM Holdings公司开发。ARM架构以其高性能、低成本和低功耗等特点而闻名,在...

Global site tag (gtag.js) - Google Analytics