一、冯诺依曼思想
1、由存储器、运算器、控制器、输入输出设备组成。
2、数据和程序以二进制的形式存放在内存中,存放的位置由地址指定,地址码为二进制。
3、控制器是根据存放在存储器中的指令序列,即程序来工作的,并由一个程序计数器控制指令的执行,控制器具有判断能力,能以计算结果为基础选择不同的工作流程。
二、计算机的工作过程
1、指令和数据放入内存;
2、数据放入CPU;
3、CPU内数据处理;
4、计算机对数据进行修正;
5、将结果放入内存;
6、工作停止;
CPU由运算器和控制器组成,不能存储数据与指令,所以需要存储器将要数据与指令存储起来,
三、计算器与计算机的区别
计算器与计算机最大的区别就是计算机具有内存。何为计算器,计算数值的机器,直接由MPU与输入输出设备组成,将脑子里想要计算的值通过输入设备输入,计算器算出结果后在输出设备显示,并不存在从内存中取数据和计算完将数据放回内存的动作,并且想要执行一段重复的计算,需要人一直通过输入设备进行操作。而计算机具有内存,人们将要执行的数据即指令放入内存中,当计算器开始工作时人们只需要等待计算机得出的最终结果,MPU会根据指令来对数据进行计算,计算完后数据会一直保留在内存中,这就是计算器与计算机最大的区别。
四、计算机的抽象图
计算机最高抽象层次图:
五、8085-8086编程模型图
最上层是状态寄存器,下来依次是运算器、通用寄存器、程序计数器(还有DI,SI,SP等)、内存。根据计算机的工作过程来看这幅图就是ALU负责计算数据,通用寄存器负责为ALU的计算提供数据和指令,而数据和执行开始都存放在内存中,如何将数据和指令放到寄存器呢?这就需要PC程序计数器来指定数据和指令在内存中的地址了,由于PC是16位寄存器,所以可以访问的地址大小就为64k,将指令和数据拿到寄存器后ALU就可以进行计算了,计算后的状态就保留在了状态寄存器中,并且计算后的值寄存器也是不能保留的,需要计算机将寄存器里面的值放到内存中,如何把结果返回到内存中呢?这里又需要利用DI、SI、BX寄存器来将其放回内存了。这就是将CPU内部寄存器与计算机的工作过程联系起来的描述,过程都是在操作寄存器寻址,所以他们都是寄存器间接寻址。
六、内存中指令与数据的分布
由于冯诺伊曼思想提出数据和指令都存放在内存中,所以抽象出下图:
七、ARM7、Cortex M0、M3的编程模型
与8085-8086的编程模型图差不多通用寄存器变为R0、R1等等,LR相当于PC的影子寄存器,这是在CPU发展中留下的一个没有改完全的问题。
这是今天上课的心得,后面会继续与老师沟通,如果有错误或补充的地方会在评论补上。