【80天学习完《深入理解计算机系统》】第十四天 复习第三章

发布于:2023-09-09 ⋅ 阅读:(78) ⋅ 点赞:(0)

专注 效率 记忆
预习 笔记 复习 做题

欢迎观看我的博客,如有问题交流,欢迎评论区留言,一定尽快回复!(大家可以去看我的专栏,是所有文章的目录)
 
文章字体风格:
红色文字表示:重难点★✔
蓝色文字表示:思路以及想法★✔
 
如果大家觉得有帮助的话,感谢大家帮忙
点赞!收藏!转发!

本博客带大家一起学习,我们不图快,只求稳扎稳打。
由于我高三是在家自学的,经验教训告诉我,学习一定要长期积累,并且复习,所以我推出此系列。
只求每天坚持40分钟,一周学5天,复习2天
80天后我们学习完《深入理解计算机系统》
本课程来自b站 九曲阑干

在这里插入图片描述

编译系统 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怎么调用汇编

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

数组地址

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

结构体

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

本文含有隐藏内容,请 开通VIP 后查看

网站公告

今日签到

点亮在社区的每一天
去签到