汇编指令大体是与机器码一一对应,少部分是伪指令。
即没有对应的机器码,其由其他的机器码实现。
如+,-,×,÷等
我们操作的存储器包括两部分,寄存器和内存。
RISC-V采用的是小端序,即从小的序号位开始存储数的低位。
如 0x1234 的 0x12 是高位,0x34是低位。
如果我们从0x0000开始存的话,0x0000存的就是0x34,0x0001存的就是0x12 。
一般内存的显示都是从低位开始显示,所以 0x1234 显示出来的结果就是:
0x0000 | 0x0001 |
---|---|
0x34 | 0x12 |
每个字节是最小的存储单位,对应8位。
名称 | 字节数 | 位数 |
---|---|---|
byte | 1字节 | 8位 |
half word | 2字节 | 16位 |
word | 4字节 | 32位 |
double word | 8字节 | 64位 |
我们所指的%hi(LABEL),取LABEL的地址高位指的是31-12位(共20位),这个是用的U型指令。
然后我们补%lo(LABEL),取LABEL的地址地位指的是11- 0位(共12位),这个用的是I型指令。