码迷,mamicode.com
首页 > 其他好文 > 详细

《程序是怎样跑起来的》第一章读后感

时间:2019-01-20 23:30:11      阅读:172      评论:0      收藏:0      [点我收藏+]

标签:表示   转化   重复执行   相互   turn   函数调用   return   连通   机器   

1.CPU的内部有寄存器、控制器、运算器和时钟四个部分构成各部分之间的有电流信号,相互连通。 一个CPU内部会有很多的寄存器。寄存器可以用来暂存指令、数据等处理对象。控制器负责把内存上的指令数据等读入存储器,并根据指令的执行结果来控制整个计算机。运算器负责运算从内存读入寄存器的数据。时钟负责发出CPU开始计时的时钟信号。
2.机器语言是指CPU能够直接解释和执行的语言。汇编,是将汇编语言编写的程序转换成机器语言的过程。反汇编,是机器语言程序转化为汇编语言程序的过程。
3.寄存器有很多种类。例如:累加寄存器, 标志寄存器,程序计数器,基址寄存器,变址寄存器,通用寄存器,指令寄存器,栈寄存器。
4.程序计数器决定程序流程。
程序的流程分为顺序执行、条件分支和循环三种。顺序执行是指按照地址内容的顺序执行指令。条件分支 是指根据条件执行任意地址的指令(就像if语句)。循环是指重复执行同一地址的指令。条件分支和循环中使用的跳转指令,会参照当前执行的运算结果来判断是否跳转。
5.标志寄存器的第一个字节位,第二个字节位和第三个字节位的值为1时,表示运算结果分别为正数、零和负数 。
6.程序中的比较指令就是在CPU内部做减法运算。如果要比较累加寄存器中存储的x值和通用寄存器中存储的y值,执行比较指令后,CPU的运算装置就会在内部进行xxx-y的运算运算,结果都会保存到标志寄存器中。
7.函数的调用机制
函数调用使用的是call指令,而不是跳转指令。call指令会把调用函数后要执行的指令地址存储在名为栈的主存内。函数处理完毕后,再通过函数的出口来执行return命令。return命令的功能是把保存在栈中的地址设定到程序计数器中。(函数调用和方法调用很像)
8. CPU能执行的机器语言指令:数据传送指令,运算指令,跳转指令,call/return指令。
通过对第一章的学习,我对CPU的内部有了大致的了解,知道了许多寄存器的功能,还知道了函数调用,对栈也有了一些的了解。加油!

《程序是怎样跑起来的》第一章读后感

标签:表示   转化   重复执行   相互   turn   函数调用   return   连通   机器   

原文地址:https://www.cnblogs.com/sjh0325/p/10296541.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!