首页 > 编程语言 >常见汇编指令

常见汇编指令

时间:2024-06-09 22:32:30浏览次数:8  
标签:汇编 常见 AL SI 指令 按位 AX BX

下面是一些包含汇编指令 MOV、PUSH、POP、LEA、LDS、ADD、ADC、INC、SUB、SBB、DEC、CMP、MUL、DIV、AND、OR、XOR、NOT、TEST、SHL、SAL、SHR、SAR、ROL、ROR、RCL、RCR、LODS、MOVS 的例题。这些例题展示了每条指令的用法及其作用。

1. MOV 指令

MOV AX, BX   ; 将寄存器 BX 的值复制到寄存器 AX
MOV AX, [SI] ; 将 SI 寄存器指向的内存位置的值加载到 AX
MOV [DI], AX ; 将 AX 的值存储到 DI 寄存器指向的内存位置

2. PUSH 指令

PUSH AX     ; 将寄存器 AX 的值压入堆栈
PUSH BX     ; 将寄存器 BX 的值压入堆栈

3. POP 指令

POP AX      ; 从堆栈弹出一个值到寄存器 AX
POP BX      ; 从堆栈弹出一个值到寄存器 BX

4. LEA 指令

LEA DX, [BX+SI] ; 将有效地址 BX+SI 加载到 DX
LEA AX, [BP+2]  ; 将 BP+2 的地址加载到 AX

5. LDS 指令

LDS SI, [BP]    ; 加载 DS:SI 指针,用 BP 指向的内存内容

6. ADD 指令

ADD AX, BX     ; 将 BX 的值加到 AX
ADD AL, 5      ; 将 5 加到 AL

7. ADC 指令

ADC AX, BX     ; 带进位的 AX 加 BX

8. INC 指令

INC AX         ; 将 AX 加 1
INC [SI]       ; 将 SI 指向的内存位置的值加 1

9. SUB 指令

SUB AX, BX     ; 将 BX 从 AX 中减去
SUB AL, 10     ; 将 10 从 AL 中减去

10. SBB 指令

SBB AX, BX     ; 带借位的 AX 减去 BX

11. DEC 指令

DEC AX         ; 将 AX 减 1
DEC [SI]       ; 将 SI 指向的内存位置的值减 1

12. CMP 指令

CMP AX, BX     ; 比较 AX 和 BX
CMP AL, 10     ; 比较 AL 和 10

13. MUL 指令

MUL BX         ; 无符号乘法 AX = AL * BX 或者 DX:AX = AX * BX

14. DIV 指令

DIV BX         ; 无符号除法 AX = DX:AX / BX

15. AND 指令

AND AX, BX     ; 按位与 AX 和 BX
AND AL, 0Fh    ; 按位与 AL 和 0Fh

16. OR 指令

OR AX, BX      ; 按位或 AX 和 BX
OR AL, 0Fh     ; 按位或 AL 和 0Fh

17. XOR 指令

XOR AX, BX     ; 按位异或 AX 和 BX
XOR AL, 0Fh    ; 按位异或 AL 和 0Fh

18. NOT 指令

NOT AX         ; 按位取反 AX

19. TEST 指令

TEST AX, BX    ; 按位与 AX 和 BX,但不存储结果,只修改标志位
TEST AL, 01h   ; 测试 AL 的最低位

20. SHL 指令

SHL AX, 1      ; 左移 AX 中的所有位,移出位进入进位标志
SHL AX, CL     ; 左移 AX 中的所有位,移位数由 CL 指定

21. SAL 指令

SAL AX, 1      ; 算术左移 AX 中的所有位

22. SHR 指令

SHR AX, 1      ; 逻辑右移 AX 中的所有位
SHR AX, CL     ; 逻辑右移 AX 中的所有位,移位数由 CL 指定

23. SAR 指令

SAR AX, 1      ; 算术右移 AX 中的所有位

24. ROL 指令

ROL AX, 1      ; 循环左移 AX 中的所有位

25. ROR 指令

ROR AX, 1      ; 循环右移 AX 中的所有位

26. RCL 指令

RCL AX, 1      ; 通过进位标志循环左移 AX 中的所有位

27. RCR 指令

RCR AX, 1      ; 通过进位标志循环右移 AX 中的所有位

28. LODS 指令

LODSB          ; 将 DS:SI 指向的字节加载到 AL,并递增或递减 SI
LODSW          ; 将 DS:SI 指向的字加载到 AX,并递增或递减 SI

29. MOVS 指令

MOVSB          ; 将 DS:SI 指向的字节移动到 ES:DI 指向的位置,并递增或递减 SI 和 DI
MOVSW          ; 将 DS:SI 指向的字移动到 ES:DI 指向的位置,并递增或递减 SI 和 DI

标签:汇编,常见,AL,SI,指令,按位,AX,BX
From: https://blog.csdn.net/qq_44630195/article/details/139567216

相关文章

  • 程序分享--常见算法/编程面试题:最长公共前缀
    关注我,持续分享逻辑思维&管理思维&面试题;可提供大厂面试辅导、及定制化求职/在职/管理/架构辅导;推荐专栏《10天学会使用asp.net编程AI大模型》,目前已完成所有内容,持续上传中。一顿烧烤不到的费用,让人能紧跟时代的浪潮。从普通网站,到公众号、小程序,再到AI大模型网站。干货满满......
  • 计算机组成原理之指令寻址
    一、顺序寻址1、定长指令字结构2、变长指令字结构二、跳跃寻址三、数据寻址1、直接寻址2、间接寻址3、寄存器寻址寄存器间接寻址4、隐含寻址5、立即寻址6、偏移寻址1、基址寻址2、变址寻址3、相对寻址......
  • Hvv常见流量特征(通俗易懂好记)
    目录 1.菜刀的流量特征2.蚁剑的流量特征3.哥斯拉流量特征4.冰蝎流量特征1.菜刀的流量特征1.user_agent一般为百度,火狐等爬虫标识2.默认连接密码为caidao,webshell为一句话3.请求体中存在eval,base64等特征关键字,eval用于传递执行的payload,菜刀默认使用的是base64的编......
  • 保养气动调节阀的常见方法有哪些?
    保养气动调节阀的常见方法有哪些?气动调节阀是一种常见的工业设备,正确的保养可以延长其使用寿命,并保证其正常运行。以下是一些保养气动调节阀的常见方法:一、定期检查:定期检查气动调节阀的外观,包括阀体、膜片、密封面等部件是否存在损坏、磨损或泄漏。如发现异常,及时更换或修......
  • 汇编:头文件
    汇编头文件(headerfiles)在汇编语言编程中类似于高层语言中的头文件,它们通常包含宏定义、常量定义、数据结构定义、函数声明以及其他在多个汇编源文件中共享的代码;使用头文件可以提高代码的可维护性和可读性,并使代码更加模块化,最常见的汇编头文件扩展名.inc,表示包含文件(include......
  • 【CTF MISC】XCTF GFSJ0249 misc_pic_again Writeup(LSB隐写+ZIP压缩包+反汇编)
    misc_pic_againflag=hctf{[a-zA-Z0-9~]*}解法用binwalk扫描,找到zip压缩包。binwalk719af25af2ca4707972c6ae57060238e.png用foremost提取,得到一张看起来一样的图片。foremost719af25af2ca4707972c6ae57060238e.png-o719再次用binwalk扫描,又找到......
  • (C语言)常见字符函数和字符串函数(详解)
    我们都知道,在C语言里有string.h这个头文件,但是C语言里没有string这个类型。字符串通常放在常量字符串中或者字符数组中,字符串常量适用于那些对她不做修改的字符串函数。string.h这个头文件里声明的函数原型也全是针对char数组的种种操作。直到C++中才出现了string这个类这......
  • 数据并非都是正态分布:三种常见的统计分布及其应用
    你有没有过这样的经历?使用一款减肥app,通过它的图表来监控自己的体重变化,并预测何时能达到理想体重。这款app预测我需要八年时间才能恢复到大学时的体重,这种不切实际的预测是因为应用使用了简单的线性模型来进行体重预测。这个模型将我所有过去的体重数据进行平均处理,然后绘制一条......
  • SQL语句的使用规范、应用场景和常见错误
    SQL语句的使用规范和应用场景在编写SQL语句时,应注意以下几点:使用规范:SQL语句的书写应有一定的规范,例如关键字的大小写、空格的使用、注释的添加等。应用场景:不同的SQL语句适用于不同的场景,例如SELECT用于查询数据,INSERT用于插入数据,UPDATE用于更新数据,DELETE用于删除数据,CREA......
  • Linux:基本指令
    文章目录ls指令pwd指令cd指令touch指令mkdir指令rmdir指令&&rm指令cp指令man指令echo指令输出重定向追加重定向cat指令输入重定向mv指令which指令alias指令more&&less指令head&&tail指令事件相关的指令date显示时间戳cal指令find指令grep指令zip&&unzip指令ta......