1.对程序员来说CPU是什么

 
   
hallo world!

现代计算机可认为由三大部分组成:
  • CPU
  • IO设备
  • 主存储器
其中CPU和主存储器称为 主机,IO设备成为 外设

一.CPU概述

  • Central Processing Unit(内部是由无数晶体管组成的电子部件,称为IC,Intergrated Circuit)
  • 寄存器,控制器,运算器,时钟(时钟信号,clock puzzle。有些计算机的时钟位于CPU外部)
寄存器的主要种类:
  • 累加寄存器:存储数据
  • 标志寄存器
  • 程序计数器:存储下一条指令所在的内存的地址
  • 基址寄存器:存储数据内存的起始地址
  • 变址寄存器:存储基址寄存器的相对地址
  • 通用寄存器
  • 指令寄存器:CPU内部使用,程序员无法通过程序对该寄存器读写
  • 栈寄存器
以上寄存器中,程序计数器,累加,标志,指令,栈寄存器都只有一个

二.内存概述

  • 一般所说的内存指main memory,简称主存
  • 主存通常使用DRAM(dynamic random access memory)
  • DRAM可以对任何地址进行数据读写,但需要稳定的电源,并不断刷新(确保数据最新),内存中存储的指令和数据会掉电丢失

三.函数的调用机制

    函数调用需要在调用完成后返回到函数调用点(准确的说是函数调用指令的下一个地址)。
    如果用 跳转指令则无法返回,所以将函数的入口地址设定到程序计数器之前,使用 call指令把函数调用后要执行的指令地址存储在名为 的主存内,函数处理完毕后,再通过函数的出口来执行 return命令,把保存在栈中的地址设定到程序计数器中。

注:一个指令或数据通常存储在多个地址上

猜你喜欢

转载自blog.csdn.net/rakish_wind/article/details/79969842