Day01 计算机硬件基础
1.什么是编程语言?
编程语言是程序员与计算机沟通的介质。
2.什么是编程?
程序员利用某种编程语言的语法格式将自己脑子中想要让计算机做的事写到文件中。
所以说,变成的结果就是文件,文件的内容就是一堆程序。
3.为什么要编程?
让计算机代替人类去工作,从而解放人力。
4.计算机硬件基础:
cpu x86-64
什么是x86: x86是电脑型号,是指该计算机是x86架构。现在公司电脑基本都是x86.
64是什么 : 是指64位操作系统。cpu一次处理数据的能力是64位。
cpu具有向下兼容性,即64位的cpu可以兼容32位的操作系统。32位的cpu不能兼容64位的操作系统,会丢失一半的数据。
存储器:
内存:内存条:
优点:读取速度快。
缺点:内存较小,且容易丢失,临时保存数据。
外存:磁盘:
优点:内存大,数据不容易丢失,可以永久保存数据。
缺点:读取速度慢。
5.对于磁盘来说,寻找到数据的总时间 = 平均寻道时间(5ms) + 平均延迟时间(7200转 4ms,(1/7200/60)*1*10^3,大概是8ms,一半就是4ms)
计算机硬件详解
计算机硬件分为五大部分:控制器,运算器,存储器,输入设备,输出设备。(取指-翻译-执行)
控制器:通过地址访问存储器,获取存储器内的指令,根据译码器分析后产生的相应操作控制信号作用于其他部件,使其他部件再控制器控制下有条不紊的工作。
运算器:实现算术运算和逻辑运算的部件。
存储器:包括内存和外存。基本功能是按照指定的地址写入或者读取信息。
输入设备:向计算机中输入信息的设备。常见的有键盘,鼠标,触摸屏等。外存储器也是一种输入设备。
输出设备:向外输出数据的设备。显示器,打印机等。外存储器也是一种输出设备。
6.控制器 + 运算器 = CPU(中央处理器(Central Processing Unit))
控制器主要协调各组件各单元工作,运算器主要负责逻辑判断和算术运算。所以CPU主要是管理和运算。
CPU读取的数据都是从主存储器(即内存)来的。
CPU往往被制成一块具有特定功能的芯片,里面有编写好的微指令集,称为微处理器。
我们使用的软件都要经过cpu内部的微指令集才能执行。下面是两种不同的微指令集:
①·精简指令集(RISC) 微指令集较为精简,每个指令运行时间短,执行效率高。但是复杂的事情需要多个指令来执行
②·复杂指令集(CISC) 指令较多且长度不同,都能执行一些较为低阶的操作。但是复杂事情,指令所用时间很长,每条个别指令处理的工作较为丰富。
常见的CISC微指令集CPU有AMD,Intel等的x86架构的cpu。
7.寄存器
因为cpu访问内存得到指令的时间比cpu执行指令要慢很多,所以cpu内部通常都有一些存储临时变量和数据的寄存器。
- 寄存器的分类:
- 1.除了用来保存变量和临时结果的通用寄存器外
- 2.多数计算机还有一些对程序员课件的专门寄存器,其中之一便是程序计数器,它保存了将要取出的下一条指令的内存地址。
在指令取出后,程序计算器就被更新以便执行后期的指令- 3.另外一个寄存器便是堆栈指针,它指向内存中当前栈的顶端。该栈包含已经进入但是还没有退出的每个过程中的一个框架。
在一个过程的堆栈框架中保存了有关的输入参数、局部变量以及那些没有保存在寄存器中的临时变量- 4.最后 一个非常重要的寄存器就是程序状态字寄存器(Program Status Word,PSW),这个寄存器包含了条码位(由比较指令设置)
CPU优先级、模式(用户态或内核态),以及各种其他控制位。用户通常读入整个PSW,但是只对其中少量的字段写入。
在系统调用和I/O中,PSW非常非常非常非常非常非常重要- 寄存器的维护:
- 操作系统必须知晓所有的寄存器。在时间多路复用的CPU中,操作系统会经常中止正在运行的某个程序并启动(或再次启动)另一个程序。
每次停止一个运行着的程序时,操作系统必须保存所有的寄存器,这样在稍后该程序被再次运行时,可以把这些寄存器重新装入。
8.处理器的演变
最原始的处理器是取指,解码,执行一起进行的,也就是其中有一个在进行,另外两个就要等待,效率很低。
后来进化发展成执行n的同时可以对n+1指令进行解码,对n+2进行取指
- 9.存储器系统
存储器一般速度高的内存容量会比较小,内存大的运行速度相对较慢。
- 10.寄存器称为CPU中的一级缓存(L1缓存),用于临时存放已经解码且需要多次使用的数据或指令。
高速缓存(L2缓存)- 11.主存通常称为随机访问存储RAM,就是我们常说的内存。内存是易失性存储,断电数据全部丢失。
ROM(只读内存 Read Only Memory)非易失型随机访问存储。在出厂前就被编程完毕,不可再修改。只能用来读取,不能输入。
ROM速度快且便宜。用于启动计算机的引导加载模块就存放在ROM中。
CMOS存储器:易失性的。用来保持当前时间和日期。他能够保持时间是因为连通这一块小电池,保持CMOS处于通电状态。
CMOS还可以保存配置的参数,比如哪一个是启动磁盘。
之所以用CMOS是因为CMOS耗电很慢,一块电池能用好几年,如果电池耗尽,则数据丢失。- 12.磁盘
磁道:每个磁头可以读取一段换新区域。
柱面:相同半径的磁道上下盘形成的柱体的柱面。和水桶的桶壁类似。简单地理解,柱面就是磁道。
扇区:从圆心散发出去两条射线,和 磁道交接形成的扇形区域。扇区典型存储的值是512字节。- 平均寻道时间:两个柱面之间的距离可以看成磁针在磁道上移动的轨迹长度。
- 13.总线
北桥:PCI桥 连接高速设备
南桥:ISA桥 连接慢速设备- 14.启动计算机
在计算机的主板上有一个基本的输入输出程序(Basic Input Output system)
BIOS就相当于一个小的操作系统,它有底层的I/O软件,包括读键盘,写屏幕,进行磁盘I/O,该程序存放于一非易失性闪存RAM中。
启动流程
1.计算机加电
2.BIOS开始运行,检测硬件:cpu、内存、硬盘等
3.BIOS读取CMOS存储器中的参数,选择启动设备
4.从启动设备上读取第一个扇区的内容(MBR主引导记录512字节,前446为引导信息,后64为分区信息,最后两个为标志位)
5.根据分区信息读入bootloader启动装载模块,启动操作系统
6.然后操作系统询问BIOS,以获得配置信息。对于每种设备,系统会检查其设备驱动程序是否存在,如果没有,系统则会要求用户按照设备驱动程序。一旦有了全部的设备驱动程序,操作系统就将它们调入内核。然后初始有关的表格(如进程表),穿件需要的进程,并在每个终端上启动登录程序或GUI
Day01 计算机硬件基础的更多相关文章
- day01计算机硬件基础
1.cpu\内存\硬盘 2.存储器 操作系统 是什么 为什么 如何用 1.什么是编程语言: 语言是一个事物与另一个事物沟通的表达方式 编程语言即程序员与计算机沟通的介质 计算机是程序员的奴隶 2.什么 ...
- python计算机硬件基础以及变量常量常量池,解释器编译器比较,python的两种运行方式
1.什么是编程语言 语言是一个事物与另外一个事物沟通的介质 编程语言是程序员与计算机沟通的介质 2.什么是编程 编程就是程序按照某种编程语言的语法规范将自己想要让计算机做的事情表达出来 表达的结果就是 ...
- day01<计算机基础知识&Java语言基础>
计算机基础知识(计算机概述) 计算机基础知识(软件开发和计算机语言概述) 计算机基础知识(人机交互) 计算机基础知识(键盘功能键和快捷键) 计算机基础知识(如何打开DOS控制台) 计算机基础知识(常见 ...
- python之路:Day01 --- Python基础1
本节内容 1.Python介绍 2.发展史 3.变量 4.用户输入 5.表达式 if...else语句 6.表达式 for 循环 7.表达式 while 循环 8.模块初识 9.数据类型初识 10.数 ...
- day01 Java基础
1.Win7中,在某目录下:shift+右键->在当前目录打开命令行窗口. Windows中打开画图工具的命令是:mspaint. 2.Windows DOS下“rd *”是删除目录的命令:“r ...
- Day01 - Python 基础介绍
1 Python 简介 1.1 Python 的由来 Python的创始人:吉多·范罗苏姆(Guido van Rossum) 1989年,吉多·范罗苏姆为了在阿姆斯特丹打发圣诞节假期时间,开发的一个 ...
- day01计算机基础
今日内容 1.计算机初步认识 1.计算机认识 1. 计算机基础 1.1硬件:cpu/内存/硬盘/主板/网卡 1.2操作系统 linux:免费开源 windows mac 1.3解释器/编译器 补充:编 ...
- python之路 ---计算机硬件基础
计算机(computer)俗称电脑,是现代一种用于高速计算的电子计算机器,可以进行数值计算,又可以进行逻辑计算,还具有存储记忆功能.是能够按照程序运行,自动.高速处理海量数据的现代化智能电子设备.一个 ...
- Oracle Day01 数据库基础
1.数据库 它是一种软件产品,是用于存放数据.管理数据的存储仓库,是有效组织在一起的数据集合. 2.数据库和数据库对象的概念 数据库:指的是物理磁盘上的文件 数据库对象:存在于内存中用于跟数据库文件进 ...
随机推荐
- 数据库连接池-配置 wallfilter
使用缺省配置的WallFilter <bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSou ...
- vim使用手册出现 找到 tag:1/9或更多 查看别的定义的方法
:ts 或 tselect 查看有相同地方的定义 通过这种方式会出现一个列表,输入:q 然后通过数字键和回车查看某一个定义,个人经常用:ts :tn或tnext 查找下一个定义地方. :tp 查找上一 ...
- Vue.js 使用 Swiper.js 在 iOS 11 时出现错误
前言 在H5项目中,需要用到翻页效果,通过 Swiper 来实现,安装 Swiper npm i swiper -S 但是实际使用中,发现低版本 iOS < 11 会出现下面这个错误: Synt ...
- Kafka使用经验小结
本文尽量从一个使用者的角度去记录一些在实战当中使用Kfaka所需要关注的要点,这样可能会贴切更多的读者,本文并不会介绍太多的Kafka的一些架构层次设计的知识,因为网上已经有一大堆的重复搬运的资料任由 ...
- windows server2012之部署HTTPS安全站点
现在的互联网越来越重视网络安全方面的内容,像我们日常生活中浏览的网上银行网站等涉及安全的你都会发现有https 的标志出现,在URL前加https://前缀表明是用SSL加密的. 你的电脑与服务器之间 ...
- macbook pro 自带和用户后装的jdk的路径
苹果系统已经包含完整的J2SE,其中就有JDK和JVM(苹果叫VM).当然如果要升级JDK,那当然要自己下载安装了. 在MAC系统中,jdk的安装路径与windows不同,默认目录是:/System/ ...
- ES6之Object
对象属性模型的相关方法: 对象自身所有属性名称 Object.getOwnPropertyNames(obj) //[] 获取某个属性的attribute对象 Object. ...
- JAVA基础--数组的应用04
一.数组的简单应用 1. 数组平均值 例子:求下列数字的平均值:1.0,2.4,3.5,4.3,5.1,6.8,7.2,8,9,10 package cn.haile.array; /** * 练习数 ...
- (水题)洛谷 - P1579 - 哥德巴赫猜想(升级版)
https://www.luogu.org/problemnew/show/P1579 先预处理出素数看看有多少个,大概才2500个不到(事实上素数的个数大约是 $\frac{n}{ln(n)}$ ) ...
- 洛谷P3537 [POI2012]SZA-Cloakroom(背包)
传送门 蠢了……还以为背包只能用来维护方案数呢……没想到背包这么神奇…… 我们用$dp[i]$表示当$c$的和为$i$时,所有的方案中使得最小的$b$最大时最小的$b$是多少 然后把所有的点按照$a$ ...