第三章 物理结构
开关->晶体管->存储器
芯片和晶体管
1对1,4,8,16,8和16的整数倍
RAM 随机读取 对应顺序读取(例如硬盘)
车间工长 cpu 处理和分配任务
流水线 数据总线
车间工长的口袋 寄存器
计算机程序是存储在内存中的二进制指令列表.在内存中,它们与其它的数据字节的列表没有任何区别,只是当被取出时,cpu对它们的解释有所不同
车间工长的内脏
机器指令是用来掷电开关的二进制模式
cpu内部的晶体管分工: 开关,高速缓存,寄存器
cpu的微体系结构
工厂经理 操作系统
ROM上软件被称为BIOS
多任务模式:时间分片
计算机是一个能执行多任务的盒子
寻址
8080 数据总线8位 可同时读取8个字节
地址总线16位,可寻址64k
8086可寻址空间变为1M,引入了实模式分段模型
32位地址总线寻址4GB
64位寻址16艾字节 (2的60次方)
内存模式:
实模式分段模型
分段模型使用两个寄存器分别存储段地址和偏移地址,段地址可以从任意地址开始,固定65535字节
寄存器
实模式平面模型
实模式分段模型
保护模式平面模型

第五章
二进制文件和文本文件的区别
机器指令 助记符(例如PUSHF)
第六章
第七章
mov eax ,'WXYZ'
上图其实可以这样理解
低地址-------->高地址
最低有效字节-------->最高有效字节
W X Y Z
从低到高阅读顺序一致
数字的情况时因为数字根据阅读习惯是最高有效位在前,源码阅读时需要反序
补码
相加溢出一位,等于0
存储已0为中值循环,例如
0,1,2,3,...,n,,n-1,...,-2,-1
000 001 010 011 100 101 110 111 0 1 2 3 4 -3 -2 -1
0 1 2 3 4 5 6 7
求补码可以去掉符号位,按位求反+1,但要记住实际上是算对应的补码的手段,例如上面的3位比特里,求1的补码的到的是7的原码
第八章
.data
标号 区分大小写
db define byte
dw define word
dd define double
EQU
EatLen: equ $-EatMsg
$令牌标识nasm在中间文件中的位置
.bbs
.text
软件中断1
用户态和内核态的切换
硬件中断
区别在于是软件还是硬件实现
第九章 位 标志 分支 和表
自顶向下思考
先建立框架在逐步深入
从这里比较细节了,需要看书
第十章 分治
过程,宏
全局数据 .data .bbs 寄存器
局部数据
过程参数 寄存器
堆栈
call 指令会立即压入返回地址,为ret做准备,弹出时会先出返回地址,可以寻址使用栈里的数据,不必弹出
短转移 近转移 远转移
这里还有一些不了解,比如模块的全局变量在内存中怎么存储
第十一章 字符串
第十二章 C语言
调用c函数传参使用堆栈