0x01 执行命令的计算机
硬件
一般来说,计算机是由微处理器(cpu)、存储器(RAM,ROM)、I/O接口、总线以及外围设备(外设)构成的
cpu是一片集成电路芯片,是实现逻辑运算和控制全机的核心部件(运算器和控制器)。
存储器分 只读存储器(ROM)和随机读写存储器(RAM),
ROM是固化了基本输入输出设备驱动程序和开机自检程序,即BIOS程序。
RAM又称内存储器(内存),通俗讲也就是现在的内存条,任何程序需要先存入RAM才能运行。
I/O接口 负责计算机与各种设备进行信息交换,是不同的设备之间的硬件接口。
总线(BUS)是连接各个部件的关键,由数据总线,地址总线和控制总线。
外部设备(外设)你们应该比我懂吧(逃
软件
而有了硬件还要有软件软件又分面向机器系统和面向用户两种:
面向机器的软件就是底层驱动,负责对各种资源和软件的管理。
而面向用户的软件就是我们平时用的或者后台运行的那些可以直接被计算机系统执行的软件了。
0x02 计算机语言
一般来说,计算机语言包括三部分:
1:机器语言
2:汇编语言
3:高级语言
机器语言
“机器语言”就是二进制代码,是纯度极高的计算机代码,可以直接被计算机执行,但是这种代码属于硅基的计算机。对我们这些碳基生物来说,看懂这些东西既复杂,又没必要(谁会没事看二进制口牙)。
不同的计算机硬件系统会有不同的指令集,也就是不同的二进制代码的处理方式,所以具体学习要针对某一种芯片,而不是大家都一样。
这是一个经验+3的代码(在0x00000100这个储存单元内加3)
10000011
00000110
00000100
00000011
由于这样的经验加三繁琐而无味
于是智慧的人类就发明了一种称为“汇编语言“的东西来方便使用。
汇编语言
“汇编语言”是利用一些英文的助记符和一些十六进制的数字组成的,每个语句都与二进制代码一一对应。碳基生物用汇编语言写出代码,然后交给汇编程序转化成机器语言,然后就可以和硅基生物愉快的玩耍了!!虽然没有简化代码的构成,但是无疑减轻了碳基生物学习编程的脑力消耗(毕竟是你们人类可以理解的东西)。
现在可以更好的经验加三了!
经验加三,告辞
MOV SI,0004H
ADD BYTE PTR [SI],3
这种由助记符、语句符号、数据变量、伪指令以及一套使用规则构成了汇编语言。
比起机器语言,更加好记、易懂,比起高级语言,它可以直接对硬件编程,占用少速度快,充分发挥硬件的特性,是老师和同学的得力小助手(误
汇编语言就像一座桥梁,连接了从前的人类和计算机,也为我们今天的繁荣计算机世界打下了基础。
高级语言
你现在看到的编程语言基本都是高级语言了这里不多赘述,你只需要学就行了(逃
以C++为例
cout<<"exp+3";
经验加三,告辞
0x03 应用
汇编很快,很高效,并且可以利用硬件的所有特性,这使得它在一些对硬件进行控制、系统软件的开发、精益求精的优化之类的地方可以大显身手。
当然,作为一个计算机专业的学生,它是你绕不开的重要课程,是你王道征途的一部分(逃