深入理解计算机组成原理学习(一)

262 阅读1分钟

第一章

1,c程序是如何加载的?

image.png

  • 1-1:预处理阶段(cpp)根据以“#”开头的命令,修改C程序,比如 #include <stdio.h>,预处理器就会读取stdio.h的内容,插入到程序文本中,生成以"i"结尾的文件
  • 1-2:编译阶段(ccl)翻译成"s"结尾的文件,它包含一段汇编语言程序
  • 1-3:汇编节点(as):把hello.s翻译成hello.o,把这些指令打包成一种叫“可重定位目标程序”,保存到hello.o中,
  • 1-4:链接阶段(ld),负责合并文件,生成hello文件,加载到内存执行。

2,系统的硬件组成

  • 1,总线:贯穿整个系统的一组电子管道,称为总线。它携带信息字节并负责各个部件间的传递,通常总线被设计成传送定长的字节块,也就是字(word)。现在大多数机器的字长要么是4字节(32位),要么是8字节(64位)
  • 2,i/o设备(输入/输出):系统与外部世界连接的通道,包括:鼠标和键盘,用户的显示器,磁盘。 每个io设备都是通过一个控制器或适配器与I/O总线相连

image.png

  • 3,主存:也就是所谓的内存。处理程序时,用来存放程序和程序处理的数据。
  • 4,处理器:cpu:是执行存储在主存的指令的引擎,处理器的核心是一个大小为一个字的的存储设备(寄存器),称为程序计数器(PC)
  • 5,高速缓存

image.png

  • 6,关于多核处理器和主存的关系图

image.png