专注 效率 记忆
预习 笔记 复习 做题
欢迎观看我的博客,如有问题交流,欢迎评论区留言,一定尽快回复!(大家可以去看我的专栏,是所有文章的目录)
文章字体风格:
红色文字表示:重难点★✔
蓝色文字表示:思路以及想法★✔
如果大家觉得有帮助的话,感谢大家帮忙
点赞!收藏!转发!
本博客带大家一起学习,我们不图快,只求稳扎稳打。
由于我高三是在家自学的,经验教训告诉我,学习一定要长期积累,并且复习,所以我推出此系列。
只求每天坚持40分钟,一周学5天,复习2天
80天后我们学习完《深入理解计算机系统》
本课程来自b站 九曲阑干
【80天学习完《深入理解计算机系统》】
- 编译系统 ciso
- 汇编代码
- 计算机系统的存储结构
- 寄存器的本质 就是 一个存储空间
- 寄存器(64位下 每个寄存器大小是8字节)
- 如何使用寄存器
- 寄存器的默认用途
- rax 返回值
- rdi rsi rdx rcx 函数参数
- rsp 栈指针
- caller调用者 callee被调用者
- 调用者保存 被调用者保存
- 指令
- 操作码 || 操作数
- 内存寻址
- 什么是寄存器?就是存储信息的空间
- 内存引用的本质:计算地址
- MOV
- mov 不能从内存搬运到内存
- bwlq
- 内存地址 ()表示
- 例子
- 0扩展 和 符合扩展 的指令
- 栈(低地址向高地址) 堆是高地址向低地址
- 入栈先减 出栈后加 pushq popq (rsp)
- leaq 加载有效地址
- 为什么要凑 因为 c只能是 1248
- 一元操作
- 二元操作
- 左移右移 编码
- 算数操作
- 条件码寄存器
- CF(无符号数的进位标志)
- ZF 零标志位
- SF 符号标志
- OF 溢出标志
- 条件码寄存器的作用(比较a和b的关系 就看 a-b后条件码)
- set指令
- 左移右移 编码
- 算数操作
- 条件码寄存器
- CF(无符号数的进位标志)
- ZF 零标志位
- SF 符号标志
- OF 溢出标志
- 条件码寄存器的作用(比较a和b的关系 就看 a-b后条件码)
- set指令
- 函数调用(callq 和 ret 对应 操作栈上的地址)
- 参数传递中 如果是地址 栈中怎么体现
- swap怎么调用汇编
- 数组地址
- 结构体
编译系统 ciso
汇编代码
计算机系统的存储结构
寄存器的本质 就是 一个存储空间
寄存器(64位下 每个寄存器大小是8字节)
如何使用寄存器
寄存器的默认用途
rax 返回值
rdi rsi rdx rcx 函数参数
rsp 栈指针
caller调用者 callee被调用者
调用者保存 被调用者保存
指令
操作码 || 操作数
内存寻址
什么是寄存器?就是存储信息的空间
内存引用的本质:计算地址
MOV
mov 不能从内存搬运到内存
bwlq
内存地址 ()表示
例子
0扩展 和 符合扩展 的指令
栈(低地址向高地址) 堆是高地址向低地址
入栈先减 出栈后加 pushq popq (rsp)
leaq 加载有效地址
为什么要凑 因为 c只能是 1248
一元操作
二元操作
左移右移 编码
算数操作
条件码寄存器
CF(无符号数的进位标志)
ZF 零标志位
SF 符号标志
OF 溢出标志
条件码寄存器的作用(比较a和b的关系 就看 a-b后条件码)
set指令
左移右移 编码
算数操作
条件码寄存器
CF(无符号数的进位标志)
ZF 零标志位
SF 符号标志
OF 溢出标志
条件码寄存器的作用(比较a和b的关系 就看 a-b后条件码)
set指令
函数调用(callq 和 ret 对应 操作栈上的地址)
参数传递中 如果是地址 栈中怎么体现
swap怎么调用汇编
数组地址
结构体