计算机是这样工作的
陈民禾,原创作品转载请注明出处《Linux内核分析》MOOC课程 http://mooc.study.163.com/course/USTC-1000029000 ,我的博客中有一部分是出自MOOC课程中视频,再加上一些我自己的理解。 一、首先在理解计算机是如何工作之前,我们先来理解一下现代计算机的模型。 现代计算机是存储程序计算机,依据冯诺依曼体系结构构造。从硬件的层面,也就是我们从计算机的主板。冯诺依曼体系结构我们可以大概抽象成一个cpu。还有一块可以抽象成内存,cpu和内存有一个连接,我们称之为总线,然后就是cpu内部,cpu里面有个很重要的寄存器,叫做ip,它总是指向内存的某一块区域,比如说它指向代码段,此时cpu就从IP指向的那个内存地址取过来一条指令执行,执行完之后Ip自加一,这样像贪吃蛇一样一步步向下面走,这就是从硬件方面解释的冯诺依曼体系。 二、计算机依靠机器语言进行工作,我们可以通过汇编语言来“指挥”计算机完成一些工作,下面就是一些汇编基础知识,总结如下: X86计算机的寄存器:32位的X86计算机的寄存器,它的低16位作为16位的寄存器,16位的寄存器,它还有8位的寄存器。8位的寄存器包含AH,BH,CH,DH,AL,BL,CL,DL。16位的寄存器包含AX,BX,CX,DX,BP,SI,DI,SP。所有开头为E的寄存器一般来讲是32位的。譬如EAX:累加器