二 加强门户网站建设,html书店网站建设,wordpress more-link,怎么注册免费网站1.实际上计算机只会实现输入、运算、输出
这三大模块缺一不可#xff0c;缺少输入意味着没有用户能使用#xff0c;缺少运算相当于一条电线毫无意义#xff0c;缺少输出相当于一直堆积信息的垃圾箱
因此计算机的硬件是由大量的IC(Integrated Circuit 集成电路)组成#…1.实际上计算机只会实现输入、运算、输出
这三大模块缺一不可缺少输入意味着没有用户能使用缺少运算相当于一条电线毫无意义缺少输出相当于一直堆积信息的垃圾箱
因此计算机的硬件是由大量的IC(Integrated Circuit 集成电路)组成每块IC上都带有很多引脚相当于电线这些引脚都是服务于输入输出运算可能有点难理解但简单来时在IC里面实际上变化的是电流变化具体的变化慢慢了解人类的对电流的定义就是数字而且只有两个数字0和1这样看来计算机其实有点笨但是怎么能变化出万种功能呢 2.程序是指令和数据的集合,无论哪个程序内容都是数值的罗列每个数值要么是指令要么是数据。
一组指令操作一段数据形成最基本的程序
这一组指令统一推荐描述的文字是“函数”
一段数据我们可以分为两类一类是输入的数据一类是输出的数据
在编程的时候数据可以赋予名字为“变量”
yf(x)
3.计算机的处理方式有时候与人类的思维习惯不同
当人描述颜色的时候会形成画面 红色蓝色绿色
当计算机描述颜色的时候会形成颜色的数字信息 例如“255,0,0”表示红色
4.计算机在一直进化
计算机的思维方式一直在改变且趋向于人类的思考方式大家应该由衷地欢迎技术的进化没有人会稀罕一成不变的好代码
编程方法也一直在进化一种是组件编程将程序的零部件组装到一起完成程序一种是面向对象编程先对你脑海中的东西建模例如建一个车的模型然后再对模型进行私人订制称为你创造的独一无二的玛莎拉蒂
5.计算机内部主要是IC的元件组成
只需记住三种
CPU中央进程处理器可以对数据执行运算并控制内存和I/O
内存CPU内的数据寄存器看看你电脑是多少位的32位64位86位是由寄存器的容量和传输进CPU的数据总线的条数共同决定前者相当于水龙头后者相当于水管水管是32位的水龙头也必须是32位的
I/OInput/Output接受用户设备的输入输出 除了以上还需要若干辅助元件
晶振是时钟发生器的主要部件晶体振荡器由于晶体有压电效应当在晶片的两面上加交变电压时晶片会反复的机械变形而产生振动而这种机械振动又会反过来产生交变电压晶振产生振荡必须附加外部时钟电路,一般是一个放大反馈电路,只有一片晶振是不能实现震荡的.晶振为了辅助CPU的运转速度会根据自身通电后振动的频率产生时钟信号频率用来衡量CPU的运转速度 IC的引脚所谓的引脚就是IC边缘裸露出的像腿一样的部分按照逆时针方向依次带有一个从1开始递增的序号 6. 比特是作为信息的收发单位
通常将1个二进制数称为1比特。将8个二进制数称为1字节
比特是信息的最小单位字节是信息的基本单位
例如32位的计算机就是一32比特为一个单位收发信息的 7. 连接电源、地址总线和数据总线
首先连接电源
为了指定输入输出数据时的源头或目的地存取数据的地址CPU上备有“地址总线引脚”例如引脚有16个用代号A0~A15表示其中A表示Address地址后面的0~15表示一个16位二进制数中各数字的位置0对应最后一位15对应第一位用而二进制表示就是0000000000000000~1111111111111111所能提供的65536个数据存取单元内存存储单元或者I/O地址进行信息的输入输出。
一旦指定了存取数据的地址就可以使用“数据总线引脚”进行数据的输入输出了数据总线引脚和地址总线引脚类似用代号D0~D15表示。
8.连接I/O
下面开始连接I/O大家知道寄存器这个词吗寄存器是位于CPU和I/O中的“数据存储器”速度很快和CPU直接交互假设一个并行PIO设备上有4个寄存器2个是用于PIO本身的功能2个是用于存储与外部设备进行输入输出的数据 9.连接时钟信号
将CPU的CLKClock时钟引脚、PIO的CLK引脚分别与时钟发生器的引脚相连在时钟发生器的作用下它们随着滴答滴答的时钟同步做动作然后连上其它的引脚这里简单带过
10.CPU工作原理
CPU 在时钟信号的控制下解释、执行内存中存储的程序按照程序中的指令从内存或 I/O 中把数据输入到 CPU 中在 CPU 内部进行运算再把运算结果输出到内存或 I/O 中 11.机器语言和汇编语言
机器语言就是0和1的各种组合不同种类的CPU对各种组合的解析也不同例如man有的人理解为“男人”有的人理解为“慢” 汇编语言就是把操作码指令和操作数指令的对象并排写在一行上仅此而已 标签的作用是为该行代码对应的内存地址起一个名字。
编程时如果总要考虑“这一行的内存地址是什么来着”就会很不方便所以在汇编语言中用标签来代替地址。用汇编语言编程时可以在任何需要标签的地方“贴上”名称任意的标签如图使用了名称“LOOP:”的标签
操作码就是助记符用来告诉计算机“做什么”的指令汇编语言中提供多少种助记符CPU就有多少种功能
操作数就是指令执行的对象 汇编语言和英语的祈使句很像可以看成是英语的祈使句中开头放置了一个表示“做什么”的动词 动词后面放一个宾语表示“作用到什么上”动词就相当于操作码宾语就相当于操作数程序的作用是向CPU发出指令。 12.寄存器的结构
I/O寄存器只能作为临时存放周边设备进行输入输出的数据
CPU的的寄存器不仅能存储数据还具备对数据进行运算的能力
举个栗子以下是Z80的CPU所带有的寄存器ABCD等字母是寄存器的名字 举例来说
A 寄存器也叫作“累加器”是运算的核心。所以连接 到它上面的导线也一定会比其他寄存器的多。
F 寄存器也叫作“标志寄存器”用于存储运算结果的状态比如是否发生了进位数字大小的比较结果等。
PC 寄存器也叫作“程序指针”存储着指向 CPU 接下来要执行的指令的地址。
PC 寄存器的值会随着滴答滴答的时钟信号自动更新可以说程序就是依靠不断变化的 PC 寄存器的值运行起来的。
SP 寄存器也叫作“栈顶指针”用于在内存中创建出一块称为“栈”的临时数据存储区域 CPU 中有各种各样的各司其职的寄存器。其中有一个被称为 PC Program Counter程序计数器的寄存器负责存储内存地址该地 址指向下一条即将执行的指令。每解释执行完一条指令PC 寄存器的 值就会自动被更新为下一条指令的地址。 13.程序像河水一样流动着
顺序执行是按照指令记录在内存中的先后顺序依 次执行的一种流程。而循环则是在程序的特定范围内反复执行若干次 的一种流程。条件分支是根据若干个条件的成立与否在程序的流程 中产生若干个分支的一种流程。无论规模多么大多么复杂的程序都 是通过把以上三种流程组合起来实现的 程序的三种流程正像是河流本身。从高山的泉眼中涌出的清泉形 成了河流的源头程序执行的起点。水流从山中缓缓流下有时向着 63 4.1 程序的流程分为三种 一个方向流淌顺序执行有时中途分出了支流条件分支还有时 由于地势卷起了漩涡循环 这就意味着我们专业的程序员在编写程序之前会通过画流程图来思考程序的流程
下面是剪刀石头布的程序流程图 思考算法时的要点是要分两步走先从整体上考虑程序的粗略流 程再考虑程序各个部分细节的流程
用户是怎样使用程序的呢首先用户启动了程序程序 执行初始化处理。接下来用户根据自己的需求操作程序程序进入循 环处理阶段。最后用户关闭了程序程序执行收尾处理。这样的使用 方法就可以直接作为程序的整体流程。 特殊的程序流程——中断处理
中断处理是指计算机使程序的流程突然跳转到程序中的特定地方 这 样 的 地 方 被 称 为 中 断 处 理 例 程Routine或 是 中 断 处 理 程 序 Handler而这种跳转是通过 CPU 所具备的硬件功能实现的
在CPU中有特定的中断引脚可以接受从I/O设备发出的中断请求信号中断处理以从硬件发出的请求为条件使程序的流程产生分支 因此可以说它是一种特殊的条件分支
编写的程序中并不需要编写有关中断处理的代码。
因为处理中断请求的程序或是内置于被烧录在计算机 ROM 中的 BIOS 系统Basic Input Output System 基本输入输出系统中或是内置于 Windows 等操作系统中。只需要先记住以下两点即可计算机具有硬件上处理中断的能力中断一词的英文是 Interrupt。 特殊的程序流程——事件驱动
程序员们经常用事件驱动的方式编写那些工作在 GUIGraphical User Inteface图形用户界面环境中的应用程序
通常把用户在应用程序中点击鼠标或者敲击键盘这样的操作称作 “事件”Event。负责检测事件的是 Windows。Windows 通过调用应 用程序的 WndProc() 函数通知应用程序事件的发生。而应用程序则根 据事件的类型做出相应的处理。这种机制就是事件驱动。可以说事件 驱动也是一种特殊的条件分支它以从 Windows 送来的通知为条件 根据通知的内容决定程序下一步的流程
事件驱动的“状态转化图”
的计算器应用程序就可以看作包含三个 状态“显示计算结果”“显示第一个输入的数”以及“显示第二个输入的 数”。随着用户按下不同种类的按键状态也会发生转变。在状态转化图 中在矩形中写上状态的名称用箭头表示状态转化的方向并且在箭 头上标注引起状态转化的原因事件 程序的流程还是只有顺序执行、条件分支和循环这三种这 一点是没有改变的。
其中的顺序执行是最基本的程序流程这是因为 CPU 中的 PC 寄存器的值会自动更新。条件分支和循环在高级语言 中用程序块表示在机器语言和汇编语言中用跳转指令表示在硬件 上是通过把 PC 寄存器的值设为要跳转到的目的地的内存地址来实现 未完看书