汇编指令收集

1.HLT
功能:
使程序停止运行,处理器进入暂停状态,不执行任何操作,不影响标志。当复位(外语:RESET)线上有复位信号、CPU响应非屏蔽中断、CPU响应可屏蔽中断3种情况之一时,CPU脱离暂停状态,执行HLT的下一条指令。
【指令格式】HLT 指令没有操作数。

2.pushf
简介
标志传送指令 PUSHF
格式
PUSHF
功能
本指令可以把标志寄存器的内容保存到堆栈中去

3.POP
汇编语言中的POP指令
将堆栈段中的一个字单元弹出
指令执行后有两步:
1).将堆栈段中当前SS:SP所指的字内容弹出到某个寄存器或段寄存器或内存单元
2).SP←SP+2
POP为单操作数
格式:
POP 寄存器
POP 段寄存器 注:除 cs之外的段寄存器才可
POP 内存地址
例如:
POP AX
POP DS
POP [0]

4.lidt
格式:
LIDT 源操作数
说明:源操作数48位(6字节)的内存操作数。该指令的功能是把存储器中的源操作数装载到中断描述符表寄存器IDTR中。操作数的低字是以字节为单位的段界限,高双字是段基地址。该指令对标志位没有影响。

5.BTS BTR BTC
按GNU指令格式:
1)、BTS %1, %2
先把%2对应的内存地址的第%1位的值填入cflags寄存器的进位位C,然后把该位置位
2)、BTR %1, %2
先把%2对应的内存地址的第%1位的值填入cflags寄存器的进位位C,然后把该位重置
3)、BTC %1, %2
先把%2对应的内存地址的第%1位的值填入cflags寄存器的进位位C,然后把该位反转

6.MSR
复制一个寄存器到 PSR 中
MSR CPSR, R0 ; 复制 R0 到 CPSR 中
MSR SPSR, R0 ; 复制 R0 到 SPSR 中
MSR CPSR_flg, R0 ; 复制 R0 的标志位到 CPSR 中
MSR CPSR_flg, #1<<28 ; 复制(立即值)标志位到 CPSR 中

7.MRS
复制 PSR 到一个寄存器中
MRS R0, CPSR ; 复制 CPSR 到 R0 中
MRS R0, SPSR ; 复制 SPSR 到 R0 中

8.ORR
逻辑或
ORR{条件}{S} , <op 1>, <op 2>
dest = op_1 OR op_2
OR 将在两个操作数上进行逻辑或,把结果放置到目的寄存器中;对设置特定的位有用。操作数 1 是一个寄存器,操作数 2 可以是一个寄存器,被移位的寄存器,或一个立即值:
ORR R0, R0, #3 ; 设置 R0 中位 0 和 1
OR 真值表(二者中存在 1 则结果为 1):
Op_1 Op_2 结果
0 0 0
0 1 1
1 0 1
1 1 1

9.BIC
BIC : 位清除
(Bit Clear)

BIC{条件}{S} , <op 1>, <op 2>
dest = op_1 AND (!op_2)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

qq_36412526

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值