1.内存是什么?
内存是操作系统的存储设备,内存由大量内存单元组成,内存单元大小为1字节,每个内存单元都有一个地址,如果要读写内存,就必须在指令中执定内存地址。
示例:高级语言中由变量,任何一个大于一字节的变量都存储在相邻的内存单元中。
而这又涉及到大端存储和小端存储
大端存储:数据高字节保存在内存低地址,低字节保存在高地址中
小端存储:数据低字节保存在内存高地址,低字节保存在内存低地址中
大小端存储与CPU相关,与内存无关。内存只管保存数据,不关系数据是什么以及怎么解释这些数据
2.内存的作用
协助CPU在执行程序时存储数据和指令
3.内存的工作原理
c = a+b
mov (%rsp),%rdx // 从栈顶指针读取到寄存器rdx中
mov 0x8(%rsp),%rax // 从变量b的值读取到寄存器rdx中
add %rdx,%rax //变量相加,并把结果放回rax寄存器中
mov %rax,0x10(%rsp) //将rax的值写会变量c所在的内存
内存部分,每一行有8个内存单元,它们的地址从右向左依次加一,即如果最右边的内存单元的地址为X的话,则同一行最左边的内存单元的地址为X+7。