读书笔记:1.2:寄存器的类型及功能:累加器——存放执行运算的数据和运算结果;标志寄存器:存放运算后的CPU的状态;程序计算器:存放下一条指令所在内存的地址;基址寄存器:存放数据内存的起始地址;变址寄存器:存放基址寄存器的相对地址;通用寄存器:存放任意数据;指令寄存器:存放指令。这个寄存器由CPU内部使用,程序员不能通过程序来直接读写它的值;栈寄存器:存放栈空间的其实地址。
1.3:地址0100是程序运行的起始位置。CPU每执行一条指令,程序计算器的值就会自动加1。CPU的控制器会根据程序计算器的值从内存中读取指令并执行。程序计算器决定了程序的流程。
1.4:程序的流程分为顺序执行、条件分支、和循环三种。顺序执行就是按照地址的数值顺序执行命令。条件分支就是按照条件执行任意地址的指令。循环就是重复执行同一地址的指令。
1.5:函数调用中,当完成函数内部的处理之后,必须让程序流程返回函数被调用的地方(也就是函数调用指令的下一条指令所在的地址)继续执行。
1.7:CPU能执行的机器语言指令功能大致分为四种类型:数据传送指令:在寄存器和内存、内存和内存、以及寄存器和外部设备之间写数据;运算指令:用累加器执行算术运算、逻辑运算、比较运算、移位运算等操作;跳转指令:执行条件分支、运算和无条件跳转;调用/返回指令:调用函数/返回函数调用出。