当前位置: 移动技术网 > IT编程>开发语言>Java > 计算机硬件学习笔记之基础知识1

计算机硬件学习笔记之基础知识1

2020年07月15日  | 移动技术网IT编程  | 我要评论

【冯诺依曼体系结构】


在这里插入图片描述



【程序在计算机中的运行】


放在磁盘中的我们写的程序源代码为.java/.c/…静态)>>先进行转换编译型/边转换边运行解释型>>运行时候被调入到应用程序内存空间中已成二进制文件/指令/机器码/计算机程序动态)>>> CPU将内存中相应数据/指令装载入自身寄存器>>>CPU解析相应指令去操作寄存器中的数据进行运算算数/逻辑>>>形成新的数据流以完成展示/文件的写入等>>>完成



【CPU】


  1. for developer:

CPU所负责的就是执行最终转换成机器码的代码内容,实现编程语言与机器语言与计算机之间的数据交互;

  1. 组成:运算器(含多种寄存器)和控制器(含多种寄存器):详细CPU组成可点击参考
  • 控制器可以理解为:指令的传输终点(IR)、解析(ID)连贯(PC)指令地址/保持(AR)访问地址
    ----控制:保持对程序(在操作系统中理解为进程)/数据的掌握;
  • 运算器可以理解为:对来自内存的数据或来自ID的状态条件数据暂存(DR/PSW–AC)以进行运算(ALU)
    ----运算:算术或逻辑运算;
  1. 位数:CPU分为32位和64位,是由其中的寄存器的位数决定的:一个32位的寄存器只能存储4个字节的数据,所以现在的CPU一般内置了很多个寄存器;
  2. PC!!!决定管理程序的执行流程;
  3. CPU工作时送出的是主存地址(外存数据也要先读进内存里);
  4. 当CPU和主存进行信息交换---->>CPU向主存读写数据或CPU从内存中读出指令时,都要使用到地址寄存器AR数据缓冲寄存器
  5. CPU读写速度很快;
  6. CPU中的寄存器的数据存储形式:二进制;
  7. 了解更多:参考



【高速缓冲存储器】


  1. 局部性原理

如果CPU当前时间段用到主存中的某块数据,CPU在下一个时间段内用到这块数据周围的数据的可能行非常大---->>Cache把这些周围数据存入,为下一个时间段的CPU使用做准备---->>提高了计算机的性能;

  1. 组成:控制module和Cache存储器module(by寄存器)
  2. Cache module用来存放主存的部分拷贝(副本)信息;读写速度比主存快,主存快于外存;
  3. 控制module的功能:判断(利用地址映射关系)CPU要访问的信息或要写入数据时对应的地址块是否在Cache存储器中,命中时直接对Cache寻址,未命中要按照替换原则决定先将主存的信息块放到Cache存储器的哪一块里;
  4. 与CPU及内存的交互:

CPU工作时送出的是主存地址,但根据该地址要从Cache存储器(对应有自己地址)中读写信息 ---->>需要将主存地址与Cache存储器的地址对应起来---->>映射---->>会有多种映射方式;



【内存】


  1. for developer:

内存是用来存放当前正在使用的(即执行中)的可执行程序(数据,指令);

  1. 内存中的存储形式:二进制;
  2. 内存可以看作一个个有编号的小格子,编号即内存地址,根据它可与拿到对应内存存储的数据;
  3. 可以与CPU进行直接交互(数据流/指令流)----在80386以上档次的微机中配置了高速缓冲存储器Cache,这时内存包括主存RAM,ROM)与高速缓存(SRAM)两部分;
  4. 我们平常所提到的计算机的内存指的是动态内存(即内存条DRAM),由于它只使用一个MOS管来存信息,所以集成度可以很高,容量能够做的很大。所谓的动态指的是当我们将数据写入DRAM后,经过一段时间,数据会丢失,因此需要一个额外设电路进行内存刷新操作。
  5. SRAM利用寄存器来存储信息,所以一旦掉电资料也会全部丢失,只要供电资料就会一直存在,但不需要动态刷新;
  6. 现代计算机系统基本都采用Cache-主存-辅存(外存)三级存储系统。其中CPU可直接访问Cache和主存,辅存则通过主存与CPU交换信息;



【外存】


  1. 包含多种类型:磁盘、光盘、CD、U盘等;
  2. 磁盘:硬盘 软盘;
  3. 物理存储方式:二进制形式;
  4. Flash存储器又称闪存(基本上属于外存),它结合了ROM和RAM的长处,不仅不会断电丢失数据,具备电子可擦除可编程(EEPROM)的性能,还可以快速读取数据(NVRAM的优势),U盘和MP3里用的就是这种存储器;



【文件】


  1. 文件是在内存中以二进制表示的数据外部存储介质上的另一种存放形式。文件通常分为二进制文件(.bin)和文本文件;
  2. 文件实际上包括两部分,控制信息和内容信息。纯文本文件仅仅是没有控制格式信息罢了,实际上也是一种特殊的二进制文件。我们说文本文件是特殊的二进制文件,是因为文本文件实际上的解释格式已经确定了:ASCII或者unicode编码。文本文件与二进制文件的区别并不是物理上的,而是逻辑上的。这两者只是在编码层次上有差异。简单来说,文本文件是基于字符编码的文件,常见的编码有ASCII编码,UNICODE编码等等。二进制文件是基于值编码的文件,对应关系不定;
    选自博客:文本文件和二进制文件的差异和区别
  3. 二进制文件是包含在ASCII及扩展ASCII字符中编写的数据或程序指令的文件,一般是可执行程序、图形、图象、声音等等文件;
  4. 文本文件(也称ASCII文件)它的每一个字节(8bits)存放的是可表示为一个字符的ASCII码的文件;

本文地址:https://blog.csdn.net/qq_40944503/article/details/107342879

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网