计算机组成:
计算机由一个处理器、内存、I/O口等组成
- 处理器:控制计算器操作和数据处理。
- 主存(main memory):存储数据和程序。这里的内存是volatile(不稳定的),当电脑关机,内容就丢失了。
- I/O模块:在计算机和外围设备数据之间交换与传输。
- 系统总线(system bus):为处理器,主存和I/O模块之间提供通信。
处理器负责和内存交换数据,因此里面含有两个register,一个是内存地址寄存器(memory address register, MAR),另一个是内存缓冲寄存器(memory buffer register, MBR)。
处理器寄存器:
处理器里面有几种比主存小但是速度快的寄存器。这些寄存器主要有两个功能:
用户可见寄存器(user-visible register):让机器和汇编语言编程者最小化由于优化寄存器使用的主存引用。(感觉怪怪的。。。
- 数据寄存器:由机器指令来处理数据,负责浮点型和整数型运算
- 地址寄存器:包含主存数据和指令的地址。
- 索引寄存器(index register)
- 段指针(segment pointer)
- 栈指针(stack pointer):这是一个用户可见的栈地址,寄存器用于指向栈顶(top of stack),实现push和pop操作。
控制和状态寄存器:
处理器使用来根据优先级来控制操作系统的routine来控制程序的执行。
- 程序计数器(program counter):存放下一条要被执行的语句的地址。
- 指令寄存器(instruction register):存放最近执行(fetch)的指令。
内存分级(memory hierarchy):消耗,容量和访问时间
- Faster access time, greater cost per bit
- Greater capacity, smaller cost per bit
- Greater capacity, slower access speed