1、计算机组成
1.众所周知,计算机由显示屏,显卡,内存条之类的硬件和显示屏上大家使用的软件构成。
硬件:
1.主机
CPU:运算器与控制器
内存储器:RAM与ROM
2.外设
输入设备:鼠标,键盘等等
输出设备:显示屏,音响等等
外存储器:C盘,D盘,U盘,光盘等等
软件:
1.系统软件
操作系统:如win7(windows),macOS,Linux,鸿蒙
网络软件等等
2应用软件
各种应用app,QQ,微信,浏览器都属于应用软件。
2、计算机语言的发展
计算机语言
1.机器语言:可以由机器直接识别,也是计算机最早的语言。用二进制码表示,也就是用0和1组成的序列构成(如100010)。
计算机可以直接识别,所以执行速度最快。
不符合人类的认知,难以理解和记忆使用。
2.汇编语言:使用如a,b,A的符号来表示指令,初步符合人类语言习惯,相对容易理解和使用。
比使用01序列更加符合人类认知
不同的硬件可能有不同的语言,所以编写效率低下,依赖硬件。
3.高级语言:现代人类编码使用的语言。如C语言,C++,JAVA,Python。
契合人类的思考方式,使用比较万能,不依赖硬件,开发的效率很高。
机器需要将其转变为汇编语言,再转变为机器语言才能理解,所以执行的速度最慢,占用空间也很多。
语言分类
1.按实现方式:分为编译型语言和解释型语言。
编译型语言:将源代码编译成机器码再执行,开发效率低(只要有一处错误便无法运行),执行效率高(只需成功一次即可)。
解释型语言:如Python、JavaScript,则在运行时由解释器逐行解释执行,开发效率高(错误的代码不影响正确代码的运行),执行效率低(每次使用都需要从头到尾运行一遍)。
2.按编程方式:可以分为面向对象语言、面向过程(函数式)语言等。
面向对象语言如Java、C++,支持封装、继承和多态等概念。
面向过程(函数式)语言如C,以函数为主要构成单元,强调无副作用和不可变性。
3、进制的相关知识点
1.何为进制
进制指的是遵循某种规则的计数方式
规则:X进制——逢X进一、借一当X
举例:
生活中:“正”字计数法便是5进制,正常数学使用的10进制,一周使用的7进制,年使用的12进制
计算机:2进制,8进制(2^3),16进制(2^4)
为什么计算机使用2进制?
是因为其他的进制难以实现,电平可以轻易显示开关两种状态,刚好对应0(低电平),1(高电平)。
2.进制三要素
数码:基本单位,数由它们组成
基数:几进制就代表基数多大
位权:每一位上的一个1代表多大
3.进制表示方法
4.进制的转换
我们使用高级语言写代码,计算机并不能直接识别,因为它只知道01,我们也需要转换为二进制才可以。
5.十进制转N进制
除N取余,逆向排列
例如:25转二进制:25 = 0b11001
25转八进制:25 = 031 (0o31)
位权展开相减法
32 16 8 4 2 1
6.二进制的原码 反码 补码
数据在存储的时候,有正数也有负数,就涉及到原码、反码、补码,因为计算机中的数据计算都是以【补码】形式参与的。
原码:给人看的,直接转换得到的
反码:用来做原码与补码之间转换的中间者
补码:给计算机看的
正数:原码 = 反码 = 补码 = 自身二进制
负数:
原码:最高位代表符号位【0正1负】,其他位是自身二进制
反码:最高位代表符号位【0正1负】,其他位对原码按位取反【0变1 1变0】
补码:最高位代表符号位【0正1负】,其他位对反码加1
如:-3
原码:111
反码:100
补码:101
4.位运算
&:有0则0
|:有1则1