文章目录

  • orr作用是按位或
  • mov的作用
  • orr代替mov使用方法
  • 反汇编中,把给某个寄存器赋值用orr 代替mov

orr作用是按位或

按照二进制位来或运算每个位规则如下:
1或0 =1
0或0 = 0
1或1 =1
1或任何数都是1
0或任何数都是任何数

mov的作用

把右边的值传送到左边寄存器里

 mov w8,#0x1f //把1f传入w8

orr代替mov使用方法

注意下面2条指令作用一样,都是给32位的寄存器w8的赋值成0x1F

orr w8,wzr,#0x1f
mov w8,#0x1f

orr是按位或,把0x1f和 wzr按位或,wzr是32位零寄存器,0与任何数按位或都是任何数. 0或0x1F结果还是0x1f,. 相当于 mov w8,#0x1f

下面2条指令作用一样,都是给64位寄存器x9赋值0xFF

orr x9,xzr,#0xff
mov x9,0xff

xzr是64位的零寄存器,结果存入64位的寄存器x9中,相当于mov x9,0xff

反汇编中,把给某个寄存器赋值用orr 代替mov

虽然直接用mov赋值比较容易理解,但是反汇编中,经常把赋值翻译成orr这种代码.看时间长了就习惯了

arm64汇编中orr 和 mov的交替使用相关推荐

  1. arm64汇编sp fp寄存器叶子函数非叶子函数的栈平衡

    文章目录 sp 栈顶指针寄存器 fp 栈底指针寄存器 (x29) arm64没有push 和 pop操作栈 开辟的空间是16的倍数 叶子函数的栈平衡 非叶子函数的汇编操作栈平衡 sp 栈顶指针寄存器 ...

  2. arm汇编中mov、movs、movw、movl、movb解析

    arm汇编中mov指令 mov 指令在汇编中表示传送含有 movl mov long : 传送字长 : 32位:把32位立即数放到寄存器 movw mov word:传送字 :16位: 把 16 位立 ...

  3. 8086汇编中mov,add,sub语法

    8086汇编中mov,add,sub语法 mov,add,sub三个都是两个操作数 几个必要的元素 1.数据 2.寄存器(指定一般寄存器) 3.段寄存器 4.内存单元 mov指令 mov 寄存器,数据 ...

  4. 汇编中Enter和Leave指令

    Enter的作用相当==push ebp和mov ebp,esp 这后面两句大家很熟悉吧?函数开始一般都是这两句 Leave的作用相当==mov esp,ebp和pop ebp 而这后面这两句也很常见 ...

  5. 汇编中常用的DOS系统调用功能号

    注意:DOS功能调用,ah的值是16进制的,又因为0~9时,16进制和10进制的数字一样,所以在汇编代码中可以写mov ah,09(09后面不用加h,汇编代码中的数字后面若不加后缀h,默认是10进制的 ...

  6. 无符号数、有符号数、补码在汇编中的运用及相关注意事项

    1.原码.反码.补码知识的复习: 三者的最高位均为符号位.我以前一直没弄明白的是为何8位补码的表示范围是-128~127,今天查阅了相关资料,于此记下. 仍然以8位为例: 原码的表示范围:-127~- ...

  7. 汇编中各寄存器的作用(16位CPU14个,32位CPU16个)和 x86汇编指令集大全(带注释)

    From:https://www.cnblogs.com/zimmerk/articles/2520011.html From:https://blog.csdn.net/bjbz_cxy/artic ...

  8. 汇编中寄存器加[]的意思

    一般说来,加方括号 [ ] 表示一种间接的取操作数方式,有点类似于C语言中的指针概念. 第一条指令 ADD AL ,[SI] 中,[SI] 表示寄存器间接寻址. 也就是说,与AL中内容相加的加数,不是 ...

  9. ARM汇编中ldr伪指令和ldr指令(转载)

    转自:http://blog.csdn.net/ce123_zhouwei/article/details/7182756 ARM是RISC结构,数据从内存到CPU之间的移动只能通过L/S指令来完成, ...

  10. 逆向知识第七讲,三目运算符在汇编中的表现形式,以及编译器优化方式

    一丶编译器优化方式 首先说一下编译器优化方式. 1.常量折叠 2.常量传播 3.复写传播 4.公共表达式 5.去掉不可达到分支 6.顺序代替分支 7.数学变化 8.代码外提 9.减少变量. 10 强度 ...

最新文章

  1. 清除浮动,消除FF和IE的区别
  2. Rundeck crontab格式
  3. Spring Boot 发起 HTTP 请求
  4. 基于cmake28来编译安装mysql服务配置解析
  5. chart.js 饼图显示百分比_Echarts饼图展示车站客流占比图
  6. 【论文解读】CVPR 2021 妆容迁移 论文+ 代码 汇总,美得很美得很!
  7. Linux学习:shell命令
  8. poj3083 Children of the Candy Corn 深搜+广搜
  9. 稀疏矩阵十字链表类java_稀疏矩阵的十字链表存储表示
  10. 计算机网络部分(共44题),计算机网络原理2013年4月真题及答案
  11. 在线邮箱订阅反馈html5模板
  12. java io 创建文件夹_Java中Io流操作-File类的常用操作-创建文件,创建文件夹
  13. vant 日历插件slots_vue的vant组件库中的slot如何按需使用呢
  14. 物体识别_深度学习在物体识别中的应用探讨:以ImageNet和人脸识别为例
  15. python有趣小程序-抖音最火的整蛊表白小程序如何做出来的?教你用python做出
  16. linux的make命令是什么,Linux中make, make install命令分别是什么
  17. Aladdin HASP加密狗破解脱壳笔记
  18. 一个用于创建JSON接口的网站 http://myjson.com/api
  19. 塔夫斯大学计算机教授,塔夫茨大学开发出一系列3D打印半球形超材料 具有独特微波或光学特性...
  20. 机器学习思维导图(更新中)

热门文章

  1. 远程软件工程师的10个最佳实践
  2. 苹果公司发布iPhone 5s和iPhone 5c
  3. HDU 5294 - Tricks Device(最短路+最小割)
  4. 桌面应用软件开发语言调查(转)
  5. 网络上行 下行速度测试软件,测试网络流畅度和上下行的方法
  6. 推荐系统(十九)Gate网络(二):百度GemNN(Gating-Enhanced Multi-Task Neural Networks)
  7. oracle其他数据对象 --- 视图(10级学员 韩晓爽课堂总结)
  8. 神武3很遗憾未能链接服务器,12月8日神武3维护解读 wuli滔滔进驻新服!
  9. SVN版本控制—branches、trunk、tag篇
  10. 申请计算机软件著作权费用,申请计算机软件著作权费用多少有哪些费用