计算机核心基础
一、编程介绍
1.什么是语言?什么是编程语言?什么是编程?什么是程序?为何要有编程语言?
语言的本质就是一个事物与另一个事物沟通的介质/表达方式。
编程语言则是人与计算机之间沟通的介质
编程就是人把自己想命令计算机干的事用编程语言翻译出来并写到文件里。
存放有人类思维逻辑的/指令的文件就是程序。
编程语言的目的就是为了奴役计算机,让计算机按照人类的思维逻辑自发地去工作从而把人力解放出来。
二、计算机硬件介绍
1.三大核心硬件
CPU
相当于人脑 用于运行程序,控制各部分组件(只负责计算)
|
内存
相当于人脑短期记忆 决定程序运行速度,增加内存,可同时运行软件越多 优点:存取速度快 缺点:断电数据就消失,只负责临时存储数据 |
硬盘
相当于本子 分为:机械硬盘、固态硬盘(性能更优) 优点:断电数据仍存在 缺点:存取速度慢,可永久保存数据 |
2.计算机五大组成部分功能及对应关系
控制器:是计算机的指挥系统,用来控制计算机其他组件的运行,相当于人类的大脑
运算器:是计算机的运算功能,用来做算术运算和逻辑运算,相当于人脑
ps:控制器+运算器=CPU
存储器:是计算机的记忆功能,用来存取数据
存储器主要分为内存与外存:
内存相当于人的短期记忆。断电数据丢失
外存(如磁盘),相当于记事的本子,断电数据不会丢失,是用来永久保存数据的
ps:内存的存取速度要远远高于外存
输入设备input:是计算接收外界输入数据的工具,如键盘、鼠标,相当于人的眼睛或耳朵
输出设备output:是计算机向外输出数据的工具,如显示器、打印机,相当于人说的话,写出的文章
3.运行程序与计算机硬件的关系
程序最先存放于硬盘中
程序运行经历的过程:从硬盘把数据加载到内存中,然后CPU从内存中读取数据/指令来执行。
PS:程序运行过程中产生的数据最先都存放于内存。
3.IO问题与程序的效率
程序运行快慢取决于IO速度;
CPU能越早地读取程序的指令程序的运行速度就越快;
把指令依赖的数据事先加载到内存,能从内存中读取数据就不要从硬盘;
针对要永久存放到硬盘中的数据,应该在内存中攒一大波然后一次性写入硬盘。
三、操作系统与平台
计算机体系的三层结构
平台=操作系统+计算机硬件
PS:开机就会启动程序占用内存空间,所以打开新购买的U盘时会发现内存变小,这是正常现象。
跨平台:应用程序能否在不同平台运行。
四、操作系统及应用程序启动
操作系统启动流程:
1、计算机加电
2、BIOS开始运行,检测硬件:CPU,内存,硬盘等
3、BIOS读取CMOS存储器中的参数,选择启动设备
4、从启动设备上读取第一个扇区的内容(MBR主引导记录512字节,前446为引导信息,后64为分区信息,最后两个为标志位)
5、根据分区信息读入bootloader启动装载模块,启动操作系统
6、然后操作系统询问BIOS,以获得配置信息。对于每种设备,系统会检查其设备驱动程序是否存在,如果没有,系统则会要求用户按照设备驱动程序。一旦有了全部的设备驱动程序,操作系统就将它们调入内核
应用程序启动流程:
1、双击exe快捷方式 - -》exe文件的绝对路径,就是在告诉操作系统
说:我有一个应用程序要执行,应用程序的文件路径是(exe文件的绝对路径)
2、操作系统会根据文件路径找到exe程序在硬盘的位置,控制其代码从硬盘加载到内存
3、然后控制cpu从内存中读取刚刚读入内存的应用程序的代码执行,应用程序完成启动