《程序是怎么跑起来的》第一章--对程序员来说CPU是什么--读书笔记

1.1 CPU的内部结构解析

  1. CPU是用于解释和运行最终转换成机器语言的程序内容。
  2. CPU的内部是由寄存器、控制器、运算器和时钟四部分构成。寄存器用来暂存指令、数据等处理对象,控制器负责把内存上的指令、数据等读入寄存器,并根据指令的执行结果来控制整个计算机。运算器负责运算从内存读入寄存器的数据。时钟负责发出CPU开始计时的时钟信号。

1.2 CPU是寄存器的集合体

  1. 程序是把寄存器作为对象来描述的。

1.3 决定程序流程的程序计数器

  1. CPU中的程序计数器决定着程序的流程,程序计数器存储的是指令的地址,初始值也就是程序运行的开始位置,随着指令的执行,程序计数器的值跟着增长。

1.4 条件分支和循环机制

  1. 程序的执行分为顺序执行、条件分支和循环三种。顺序执行是指按照地址内容的顺序执行指令。条件分支是指根据条件执行任意地址的指令。循环是指重复执行同一地址的指令。
  2. 程序中的比较指令,就是在CPU内部做减法运算,32位CPU标志寄存器会存储运算的结果,其第一个字节位、第二个字节位、第三个字节位的值为1时,分别表示运算结果为正数、零和负数。是否执行跳转指令,则参考标志寄存器的数值后进行判断。

1.5 函数的调用机制

  1. 高级语言中函数调用翻译到机器语言,要用到call指令和return指令。call指令会把函数的入口地址设定到程序计数器,在此之前也会把调用函数后要执行的指令地址存储在栈中。等函数处理完毕后,再通过执行return命令,把保存在栈中的地址设定到程序计数器中。

1.6 通过地址和索引实现数组

  1. CPU通过基址寄存器+变址寄存器的值来确定内存地址,变址寄存器的值相当于高级编程语言程序中数组的索引功能。

1.7 CPU的处理其实很简单

这里写图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值