L8 Storing Data in Memory(lw and ld)

前请提要

回到L7 RISC-V Basics#Addtion and Subtraction
Pasted image 20241002192307.png

Data Transfer: Load from and Store to memory

图片解释所有
Pasted image 20241002192636.png

Memory Addresses are in Bytes

fast facts,跟mips一模一样,都是按byte寻址
Pasted image 20241002192806.png

Big Endian vs. Little Endian

check for c Lab4 makefile#Big-Endian and Little-Endian
Pasted image 20241002193313.png

Load and store

Pasted image 20241002193839.png

Pasted image 20241002193852.png

Loading and Storing Bytes

Pasted image 20241002194653.png
在 RISC-V 中,lbulb 的区别就在于 如何扩展数据

1. lbu(load byte unsigned)

2. lb(load byte)

冷笑话

注意右边小方框的冷笑话/脑筋急转弯
为什么有lbu没有sbu?
因为 sb(存储字节),只是将寄存器中的低8位写入内存,不管寄存器中的值是有符号的还是无符号的。存储字节操作并不涉及符号扩展,因为你只是单纯地将数据字节从寄存器写入内存,不需要进行进一步处理。

再议addi

Pasted image 20241002202451.png