第8课:指令和程序 benben Posted on Jan 20 2023 Crash cource in computer science ##1、概念梳理 * 指令:指示计算机要做什么的代码(机器码),多条指令共同组成程序。如数学指令,内存指令。 * 注:指令和数据都是存在同一个内存里的。 * 指令集:记录指令名称、用法、操作码以及所需RAM地址位数的表格。  程序 ##2、指令的执行 * 原则: * RAM每一个地址中,都存放0或1个数据。 * 特定的数字组合,就表示一个指令,否则表示一个值。 * LOAD指令: * 计算机会按地址的顺序,读取RAM中所记录的指令/数据。 * 计算机接收到指令后,如LOAD_A,则通过数据线将数据传至寄存器A。  * ADD指令: * ADD B A指令告诉ALU,把寄存器B和寄存器中的数字加起来,存到寄存器A中。 * JUMP指令: * 遇到JUMP指令,程序会跳转至对应的RAM地址读取数据。 * JUMP指令可以有条件跳转(如JUMP-negative),也可以无条件跳转。 ##3、计算机指令长度 由于长期计算机每个字只有8位,指令只占4位,意味着只能有16个指令,这远远不够。 > 现代计算机有两种方式解决指令不够长的问题: >> 最直接的是用**更多位来表示指令**,如32位或64位。 >> 采用“可变指令长度”,令不同的指令的长度不同,尽量节约位数。 >>> 假设1个字为16位,如果某指令不需要操作内存,则可以省去寻址的位数。 >>> 该情况下,部分指令后面需要跟数据,如JUMP,称为立即值。 赠人玫瑰,手留余香 赏 Wechat Pay Alipay 第1课:计算机早期历史 第12课:编程基础—语句和函数