ARM64
计算机中常见的数据宽度
- 位(Bit):1个二进制位
- 字节(Byte):一个字节有8个Bit组成,内存中最小的单元为Byte
- 字(Word):1个字由两个字节组成(16位),这两个字节分为高字节、低字节。
- 双字(DoubleWord):1个双字由两个字组成(32位)。
计算机中:正数用原码表示、负数用补码表示(负数的反码+1就是补码)。
通用寄存器
ARM64中有31个64位的通用寄存器,x0~x30
- w0~w28的这些32位的,可以兼容32位。
- 比如w0是x0的低32位。
- 通常存放一般性数据,有时也有特殊的用途。
pc寄存器
- 为指令指针寄存器,它指示了CPU当前要读的指令的地址。
- 在内存或磁盘中,指令和数据没有任何区别,都是二进制信息。
bl指令(转移指令)
- CPU从何处执行命令由pc决定,我们可以通过改变pc的内容过来控制CPU执行目标指令。
- ARM64中的mov指令,可以修改大部分寄存器的值,但是不能设置pc的值。
- ARM64提供了另外的指令来修改PC的值,执行指令被称为转移指令,最简单的是bl指令。
网友评论