计算机是怎样跑起来的(第一二章阅读笔记)

目录

 第1章计算机的三大原则

第2章试着制造二台计算机吧

介绍一下IC

为什么将字节是信息的基本单位?一个字节为什么要定义大小为8个比特?

 介绍一下PIO

如何理解“所谓中断就是让 CPU 根据外部输入的数据执行特定的程序”这句话

介绍一下单片机


 

 其实不仅是计算机,其他学问亦是如此。首先要划出一个“知识的 范围”,精通一门学问所必知必会的知识都在这个范围内。其次是掌握 该范围内每个知识点中“基础中的基础知识”。最后是能独当一面的 “目标”,即掌握了这些知识可以做什么。下面就以学习音乐为例说明 这三点。首先,划出的“知识范围”是节奏、旋律、和弦这三个知识 点。所谓“基础中的基础知识”,对于节奏来说就是四拍子(大、大、 大、大),对于旋律来说就是 C 大调(do re mi fa so la si do),对于和弦 来说就是大三和弦(do mi so)。以四拍子为基础就能理解更加复杂的三 拍子或五拍子;以 C 大调为基础就能理解更加复杂的降 B 小调;以大 三和弦为基础就能理解更加复杂的减三和弦。而最终的“目标”就是能 够自己作曲并演奏,尽管这时仅能完成很简单的曲子。

本书的目的是想让诸位了解有关计算机技术的知识范围,掌握其 基础中的基础知识,设定目标;同时又想让那些打算用计算机做点什 么,却又因难以下手而犹豫不决的人,以及虽然就职于计算机行业, 却又因追赶不上最新技术而苦恼的人,能够了解计算机的本质。其实 计算机非常简单,谁都能掌握。只要掌握了,计算机就会越来越有趣。

 第1章
计算机的三大原则

 

硬件和软件的区别是:

硬件是指计算机系统中的物理部分,包括计算机的主板、处理器、内存、硬盘、显示器、键盘等。它们是实际的电子器件和设备,能够执行计算机操作的物理操作和功能。

软件是指计算机系统中的程序和数据,它是由一系列指令和数据组成的。软件可以分为系统软件和应用软件。系统软件是为了管理和控制计算机硬件而设计的,例如操作系统。应用软件是为了满足特定需求而开发的,例如办公软件、游戏软件等。

存储字符串"中国"所需的字节数取决于所使用的字符编码方式。在常见的编码方式中,UTF-8是一种常用的多字节编码,每个汉字通常需要3个字节来表示。因此,字符串"中国"在UTF-8编码下需要6个字节的存储空间。

编码(Code)是将某种信息转换成特定格式的过程,使其能够在计算机或其他设备上进行存储、传输和处理。在计算机科学中,编码通常指的是将字符、数字、符号等转换为计算机可以识别和处理的二进制形式。常见的编码方式包括ASCII码、Unicode和UTF-8等。编码使得计算机能够理解和处理不同类型的数据,并确保数据的正确传输和存储。

我觉得他们之间有很多的区别:

1 实现的方式不同,硬件更多的要去设计电路,面向实际的电子单管管线等等的组织与架构设计,而且软件不一样,目前更多的是通过一个编译环境,使用编程的方式从而实现

2 它们的基础不一样,硬件是基于现实物理架构的,但是软件是基于人为定义的,这个区别其实很大

你对第一个问题的回答已经涵盖了硬件和软件之间的一些主要区别,但我可以对你的回答进行进一步补充和澄清:

  1. 实现方式不同:硬件是由电子器件和物理电路组成的实体部分,它们直接执行计算机操作的物理功能。软件则是一系列指令和数据的集合,通过编程语言和编译器等工具转化为可执行的程序,由计算机的硬件来执行。

  2. 基础不同:硬件是基于物理原理和电子技术的实际构建,它的设计和制造依赖于物理材料、电子元件和电路布局等。软件则是基于人为定义和逻辑构建的,它是由人类编写和设计的抽象逻辑模型,用于控制和操作计算机系统。

此外,还可以补充一些其他区别:

  1. 可变性:硬件通常是静态的,它们的功能和性能在制造之后很难修改。而软件具有可变性,可以根据需求进行修改、升级和扩展,以适应不同的应用场景和功能需求。

  2. 抽象层级:硬件是计算机系统的底层实现,它直接与物理硬件交互。软件则处于较高的抽象层级,它通过指令和接口与硬件进行通信和控制,提供更高级的功能和操作界面。

  3. 使用方式:硬件是通过物理操作来实现功能,例如使用键盘、鼠标等输入设备,显示器等输出设备。软件则是通过用户界面和命令行等方式与用户进行交互。

综上所述,硬件和软件在实现方式、基础、可变性、抽象层级和使用方式等方面存在明显的差异,它们共同构成了计算机系统的两个重要组成部分。

编码目前在我的理解是,通过我们人为逻辑设计在电脑上使用一个特定的编译环境使用与之匹配的一种编码语音按照一定规则从而实现一些要求的操作过程。 

你对第三个问题的回答已经涉及了编码的一些关键方面,但我可以对你的回答进行一些补充和澄清:

编码可以有多种不同的含义,但在计算机领域中,编码通常指的是将信息转换为特定的编码形式,以便计算机能够理解和处理。下面是对你回答中提到的一些关键点的补充:

  1. 编码是通过人为逻辑设计:编码是由人类根据特定的规则和语法设计的,它可以是编程语言中的代码,也可以是数据的表示形式,如文本、图像、音频或视频。

  2. 编码在特定的编译环境下使用:编码通常需要使用特定的编程语言、开发工具和编译环境来实现。编译环境将编码转换为计算机可以执行的指令或数据。

  3. 编码按照一定规则进行:编码需要符合特定的语法和规则,以确保计算机能够正确解析和执行编码所代表的意义。这些规则可以包括语法规则、数据类型规范、命名约定等。

  4. 编码实现特定要求的操作过程:编码用于描述和实现特定的功能或操作过程。它可以涉及数据处理、算法实现、用户界面设计、网络通信等各个方面。

需要注意的是,编码的概念和应用范围非常广泛,在不同的领域和背景下可能具有不同的含义和用法。在计算机科学中,编码是一种重要的概念,它使我们能够将抽象的思想和需求转化为计算机可以理解和执行的指令和数据。

那看来GBK的编码格式就是一个汉字占2个字节。

 

计算机的三大原则

其实这也是我听到很多专家目前说的,其实目前计算机这门学科很老旧,看似每天突飞猛进,其实本质来说,没有什么改变

 

 

计算机三大原则中的每一条,都是从事计算机行业 20 余年的笔者 深切领悟出来的。诸位可以把这本书拿给你周围了解计算机的朋友看, 他们应该会对你说“确实是这样的啊”“当然是这样的了”这类话。过 去的计算机发烧友们在不知不觉中就能逐渐领悟出计算机的三大原则。 而对于那些打算从今日开始深入接触计算机的普通人来说,三大原则 中的有些地方也许一时半会儿难以理解,但是不要担心,因为下面的 解释会力求让诸位都能理解三大原则的具体含义。

 

输入、运算、输出三者必须成套出现,缺一不可。这样说的原因 有几点。首先,现在的计算机还没有发展到能通过自发的思考创造出 信息的地步。因此不输入信息,计算机就不能工作。所以,输入是必 不可少的。其次,计算机不可能不执行任何运算。如果只是使输入的 信息绕过运算环节直接输出,那么这就是电线而不是计算机了。可以说 不进行运算,计算机也就没有什么存在的意义。最后,输入的信息如果 经过了运算,那么运算结果就必然要输出。如果不输出结果,那么这也 不是计算机而只是堆积信息的垃圾箱了。因此,输出也必不可少。

 程序中的数据分为两类,一类是作为指令执行对象的输入数据, 一类是从指令的执行结果得到的输出数据。在编程时程序员会为数据 赋予名字,称其为“变量”。看到变量和函数,诸位也许会联想到数学 吧。正如数学中函数的表记方法那样,在很多编程语言中都使用着类 似于下面的这种语法。

 

 然后经过编译就可以生成可执行的程序文件 MyProg.exe 了。接下来使用 能查看文件内容的工具查看 MyProg.exe,其内容应该与代码清单 1.2 类似。可以看到里面仅仅是数值的罗列(这里用十六进制数表示)

 

 总之,作为可以提高工作效率的工具,有些靠手工作 业完成的业务可以直接交给计算机处理。但是也有很多手工作业无法 直接由计算机处理。也就是说,在用计算机替代手工作业的过程中, 要想顺应计算机的处理方法,有时就要违背人们的思维习惯。请诸位 特别留心这一点。

 

 

 

 只要定义出了指令和数据的规范,装有符合规范的程序的计算机 自然就可以相互协作了。所谓计算机的协同工作指的是,输入到一台 计算机中的数据,可以通过互联网传送到与这台计算机相连的其他计 算机上执行运算,运算所输出的结果再返回给这台计算机。像这样部 署在其他计算机上能执行某种运算的程序就叫作 XML Web 服务。

计算机进化的目的只有一个——与人类更加相近。要想贴近人类,就 必须从计算机的处理方式中摒弃不符合人们思维习惯的部分。

        但是这个发明的意义还是在于机器人 能和人类做相同的事了。有乐谱和钢琴就能演奏,人能走的道路或台 阶它也能走,这样的机器人无疑才能更加方便地应用于人类社会。

20 世纪 80 年代中期盛行的个人计算机操作系统是 MS-DOS

若与十几年前相比,诸位身边的个人计算机也在逐渐贴近人类。 20 世纪 80 年代中期盛行的个人计算机操作系统是 MS-DOS,其操作方 法是靠在全黑的画面上敲入字符,把命令传给计算机。进入 90 年代 后,MS-DOS 进化成了 Windows,用户可以在图形界面上通过鼠标的 操作直观地下达命令(如图 1.3 所示)。开发出 Windows 的美国微软公 司,正将目标锁定在用户体验(User Experience)上,旨在开发出超过 现有 Windows、更加贴近人类的用户界面(计算机的操作方法)。

Windows XP 和 Office XP 末尾的 XP,代表的就是 Experience(体验)。 Windows 若能这样不断进化下去,早晚会有一天,面向个人计算机的 语音输入和手写输入等技术将变得极为普及。

诸位读者当中应该也有对编程感兴趣的人吧。编程方法也在进化, 进化的成果是诞生了两种编程方法,面向组件编程(Component Based Programming)和面向对象编程(Object Oriented Programming)。这两者 的进化目标一致,都是使程序员可以在编程中继续沿用人类创造事物 时的方法。面向组件编程的方法是通过将组件(程序的零件)组装到一 起完成程序;面向对象编程的方法是先如实地对现实世界的业务建模, 之后再把模型搬到程序中。使用符合人类思维习惯的编程方法,可以 实现高效率的开发。

         虽然在 IC 家族当中有功能各异的各种 IC,但是在这里希望 诸位记住的只有三种:CPU(处理器)、内存以及 I/O。

        CPU 是计算机的大脑,在其内部可对数据执行运算并控制内存和 I/O。内存用于存储指令和数据。I/O 负责把键盘、鼠标、显示器等周边 设备和主机连接在一起,实现数据的输入与输出。

在诸位所使用的 Windows 个人计算机中,多数都只装有一枚名为 Pentium(奔腾)的 CPU 吧。内存的数量则会根据所需存储的大小(少 则 32MB,多则 256MB)装有多条。I/O 也会根据周边设备的多少装配 有多个。可以认为个人计算机背板上有多少个插孔就有多少个 I/O。

电脑最基本的组成:

CPU和内存、I/O设备

 

第2章
试着制造二台计算机吧

初级问题: CPU 是 Central Processing Unit(中央处理器)的缩写。它是计算机的核心组件之一,负责执行计算机程序中的指令,进行算术运算、逻辑运算和数据处理等任务。

中级问题: HZ 是 Hertz(赫兹)的缩写,表示每秒钟发生的周期数量。在计算机领域中,HZ 通常用于表示 CPU 的时钟频率,即每秒钟钟摆的振荡次数。较高的时钟频率意味着 CPU 可以处理更多的指令和数据。

高级问题: Z80CPU 是一种 8 位的 CPU,它由 Zilog 公司开发并推出。Z80CPU 在 1970 年代末和 1980 年代初非常流行,广泛应用于个人计算机、游戏机、嵌入式系统等设备中。它具有多种寻址模式、指令集丰富和较高的时钟频率等特点,被广泛认为是一种经典的 8 位微处理器。

central process unit(processing)

单位应该是频率

 

 

 首先让我们来收集元件吧。制作微型计算机所需的基础元件只有 3 个,CPU、内存和 I/O,每种元件都是作为一块独立的 IC 在市场上出 售的。

CPU 是计算机的大脑,负责解释、执行程序。内存负责存储程 序和数据。I/O 是 Input/Output(输入/输出)的缩写,负责将计算机和 外部设备(周边设备)连接在一起

 

         为了驱动 CPU 运转,称为“时钟信号”的电信号必不可少。这种 电信号就好像带有一个时钟,滴答滴答地每隔一定时间就变换一次电 压的高低

        输出时钟信号的元件叫作“时钟发生器”。

 

介绍一下IC

IC 是 Integrated Circuit(集成电路)的缩写。集成电路是将许多电子器件(如晶体管、电阻、电容等)集成到一个微小的芯片上的技术和产品。它通过在单个芯片上实现多个功能电路,实现了电子元器件的迷你化、高集成度和高性能。集成电路可以分为模拟集成电路和数字集成电路两种类型。

模拟集成电路是基于连续信号的处理和传输,用于处理模拟信号(如声音、光线等)。它常用于音频设备、放大器、滤波器等领域。

数字集成电路是基于离散信号的处理和传输,用于处理数字信号(如二进制数据)。它常用于计算机、通信设备、数字电视等领域。

集成电路的发展极大地推动了电子技术的发展和应用。它使得电子设备更小、更轻便,功能更强大,功耗更低,成本更低廉。集成电路被广泛应用于各个领域,如计算机、通信、医疗、汽车、家电等,成为现代社会不可或缺的关键技术。

         电阻是用于阻碍电流流动、降低电压值的元件。为了省去布线的 麻烦,这里也会使用将 8 个电阻集成到 1 个元件中的集成电阻

        电阻的单位是 Ω(欧姆)。电容是存储电荷的元件,衡量 存储电荷能力的单位是 F(法拉)。要让微型计算机运转起来,5V(伏 特)的直流电源是必不可少的。于是还需要使用一个叫作“开关式稳压 电源”的装置,将 220V 的交流电变成 5V 的直流电。

 

 

 

 在开始布线之前,先来介绍一下电路图的读法。在电路图中,用 连接着各种元件符号的直线表示如何布线。电路中有些地方有交叉,但若只是交叉在一起的话,并不表示电路在交叉处构成通路。只有在 交叉处再画上一个小黑点才表示构成通路。

         本次制作的微型计算机工作在 +5V 的直流电下。虽然在实际的电 路中要把 +5V 和 0V 连接到各个元件的各个引脚上,但是如果在电路 图中也把这些地方都一一标示出来的话,就会因为到处都是 +5V 和 0V 的布线而显得混乱不堪了。所以要使用如图 2.4 所示的两种电路图符号 来分别表示电路连接到 +5V 和连接到 0V 的情况。

        IC 的引脚(所谓引脚就是 IC 边缘露出的像蜈蚣腿一样的部分)按 照逆时针方向依次带有一个从 1 开始递增的序号。数引脚序号时,要 先把表示正方向的标志,比如半圆形的缺口,朝向左侧。举例来说, 带有 14 个引脚的 7404,其引脚序号就如图 2.5 所示

 

 

 首先连接电源。

 

 :通常将 1 个二进制数(也就是数字 IC 上 1 个引脚所能表示的 0 或者 1)所表示的信息称作“1 比特”,将 8 个二进制数(也就是 8 比特)称作“1 字节”。比特是信息的最小单位, 字节是信息的基本单位。这里制作的微型计算机是一台 8 比特微型计 算机,因此是以 8 比特为一个单位收发信息的。

为什么将字节是信息的基本单位?一个字节为什么要定义大小为8个比特?

字节作为信息的基本单位是由于它在计算机系统中的重要性和广泛应用。

首先,字节是计算机系统中最小的可寻址单元。计算机内存和存储器的最小存储单位就是字节,也就是说,计算机通过字节来存储和访问数据。字节的大小定义了计算机能够处理的最小数据单元,因此它是信息处理和存储的基本单位。

其次,字节的大小为8个比特(bits)是由历史和实际需求决定的。在早期计算机系统中,字节的大小可以是不同的,但随着计算机发展和标准化的需要,8位字节逐渐成为主流。这主要是因为8位字节具有足够的容量来表示一个字符(如ASCII码),而且在计算和存储操作中具有较高的效率。同时,8位字节也方便了二进制数的处理和表示,简化了计算机系统的设计和编程。

另外,8位字节的标准化也促进了计算机系统之间的互操作性。多数计算机系统都采用了8位字节作为基本单位,这样就实现了数据的互通和兼容性。不同计算机系统之间可以通过共同的字节大小进行数据交换和通信,使得信息的传递和共享更加便捷和可靠。

总结起来,将字节定义为信息的基本单位是为了方便计算机系统的设计、数据的处理和存储,以及实现不同系统之间的互操作性。8位字节的大小被广泛采用是历史和实际需求的结果,它具有足够的容量和效率,适用于各种计算机应用场景。

一旦指定了存取数据的地址,就可以使用数据总线引脚进行数据 的输入输出了。Z80 CPU 的数据总线引脚共有 8 个,用代号 D0~D7 表示。其中的 D 表示 Data(数据),后面的数字 0~7 与地址总线引 脚代号的规则相同,也表示二进制数中各个数字的位置。Z80 CPU 可以一次性地输入输出 8 比特的数据,这就意味着如果想要输入输 出位数(比特数)大于 8 比特的数据,就要以 8 比特为单位切分这个 数据。

 作为内存的 TC5517 上也有地址总线引脚(A0~A10)和数据总线 引脚(D0~D7)。这些引脚需要同 Z80 CPU 上带有相同代号的引脚相 连。一块 TC5517 上可以存储 2048 个 8 比特的数据(如图 2.6 所示)。 可是由于用于输入程序的指拨开关是以 8 比特为一个单位指定内存地 址的,所以我们只使用 TC5517 上的 A0~A7 这 8 个引脚,并把剩余的 A8~A10 引脚连接到 0V 上(这些引脚上的值永远是 0)。虽然总共有 2048 个存储单元,最终却只能使用其中的 256 个,稍微有些浪费。下 面就请诸位用红铅笔把 Z80 CPU 和 TC5517 的 D0~D7 以及 A0~A7 引脚分别连接起来。

 

Z80 PIO 上共有 4 个寄存器。2 个用于 设定 PIO 本身的功能,2 个用于存储与外部设备进行输入输出的数据。

 

 既然已经大体上了解了 Z80 PIO 的结构,下面就开始布线吧。因 为 Z80 PIO 上也有 D0~D7 的数据总线引脚,所以先把它们和 Z80 CPU 中带有同样代号的引脚连接起来。这样 CPU 和 PIO 就能使用这 8 个引脚交换数据了。

 介绍一下PIO

PIO是"Programmed Input/Output"的缩写,意为"编程输入/输出"。PIO是一种传输数据的基本方法,用于在计算机系统中实现与外部设备的数据交互。

PIO的工作原理是通过编程控制来实现数据的输入和输出。在PIO模式下,计算机使用CPU的指令集来直接管理数据传输,包括从外部设备读取数据和向外部设备发送数据。具体而言,当需要进行数据输入时,CPU会向外部设备发出读取指令,并等待外部设备将数据传输到指定的数据寄存器中;当需要进行数据输出时,CPU会向外部设备发送写入指令,并将数据从指定的数据寄存器中传输到外部设备。

PIO相对于其他数据传输方法(如DMA)的主要特点是简单和可控。它不需要额外的硬件支持,仅依靠CPU的指令和控制来完成数据传输操作。这使得PIO适用于一些低速设备或对数据传输要求不高的场景。然而,由于PIO是通过CPU进行数据传输的,它的效率相对较低,会占用大量的CPU资源和时间,导致系统性能下降。

随着技术的发展,PIO逐渐被更高效的数据传输方法所取代,例如DMA(Direct Memory Access)和IO映射等。这些方法能够减轻CPU的负担,提高数据传输速度和系统的整体性能。

总结起来,PIO是一种编程控制的数据输入/输出方法,通过CPU的指令集来实现与外部设备的数据交互。它的特点是简单可控,但效率相对较低。随着技术的发展,PIO被更高效的数据传输方法所取代。

接下来要把 Z80 PIO 的 B/A 和 C/D 引脚分别连接到 Z80 CPU 的地 址总线引脚 A0 和 A1 上。若表示 IC 引脚作用的代号上划有横线,则 表示通过赋予该引脚 0(0V)可使之有效,反之若没有横线,则表示通 过赋予该引脚 1(+5V)可使之有效。因此若赋予 B/A 引脚 1 则表示选 中 B,反之赋予 0 则表示选中 A。同样地,若赋予 C/D 引脚 1 则表示 选中的是 C(C 即 Control,表示控制模式);反之赋予 0 则表示选中的 是 D(D 即 Data,表示数据模式)

 

 据说 19 世纪英国的查尔斯·巴贝奇(Charles Babbage)曾向制造计算 机的原型——分析机发起过挑战。分析机由齿轮组成,因当时科技水 平的限制并未制造完成。可是如果把分析机改用电子元件制造出来的 话,就是今天的计算机。

连接用于区分读写对象是内存还是 I/O 的引脚

 

 

 CPU、内存、I/O 中不但有地址总线引脚、数据总线引脚,还有其 他引脚,通常把这些引脚统称为“控制引脚”。之所以这样命名是因为 这些引脚上输入输出的电信号具有控制 IC 的功能。现在 Z80 CPU 上只 剩下 9 个控制引脚没有连接了,那么就再加把劲,继续用红铅笔把它 们也连接到电路中吧。

首先把 Z80 CPU 的 M1 引脚(即 Machine Cycle 1,机器周期 1)和 INT 引脚(即 Interrupt,中断)与 Z80 PIO 上标有相同代号的引脚连接 起来。M1 是用于同步的引脚,INT 引脚是用于从 Z80 PIO 向 Z80 CPU 发出中断请求的引脚。所谓中断就是让 CPU 根据外部输入的数据执行 特定的程序。有关中断的详细内容将在第 4 章介绍,这里只需要先记 住 I/O 可以中断 CPU 对程序的处理流程就可以了。

如何理解“所谓中断就是让 CPU 根据外部输入的数据执行特定的程序”这句话

这句话的意思是,中断是一种机制,它可以让CPU根据外部输入的数据或事件来中断当前的执行任务,转而执行与这些输入数据或事件相关的特定程序或处理程序。

在计算机系统中,外部设备或其他系统组件可以向CPU发送中断信号,通知CPU发生了某个特定的事件,例如键盘输入、鼠标点击、定时器到期等。当CPU接收到中断信号时,它会立即暂停当前的执行任务,保存当前的执行状态,并跳转到预先指定的中断处理程序。

中断处理程序是与特定事件相关的程序,它包含了处理这个事件的指令和逻辑。当CPU执行中断处理程序时,它会根据中断的类型和来源执行相应的操作,处理输入数据或事件,然后恢复之前的执行状态,继续执行被中断的任务。

中断的作用在于让CPU能够及时响应外部事件或输入,并进行相应的处理。通过中断机制,CPU可以在不干扰当前任务的情况下,实时地响应和处理各种输入和事件,提高系统的可响应性和效率。

总结起来,中断是一种让CPU根据外部输入的数据或事件执行特定程序的机制。它允许CPU在接收到中断信号时,立即中断当前任务,执行与中断相关的处理程序,然后返回到原来的任务继续执行。中断机制能够提高系统的实时性和可响应性,使CPU能够及时处理各种输入和事件。

 

 

        像这样不经过 CPU 而直接从外部设 备读写内存的行为叫作 DMA(Direct Memory Access,直接存储器访 问)

 

 

         其实计算机的工作原理非常简单。CPU 在时钟信号的控制下解释、执行内存中存储的程序,按照程序中的指 令从内存或 I/O 中把数据输入到 CPU 中,在 CPU 内部进行运算,再把 运算结果输出到内存或 I/O 中。无论是小型的微型计算机,还是高性能 的个人计算机,其工作原理都是相同的。

(这段话总结地真的很好)

其实计算机就是

        CPU时钟信号控制下解释、执行内存中存储的程序

        按照程序中的指令从内存或者I/O中,把数据输入到CPU中,之后与CPU内部运算,之后再把结果输出到I/O中。

        原理相通

 

 

 

 

 

 

 

 

 

 如今活跃在计算机行业第一线的工程师们,他们多数都在年轻的 时候玩过微型计算机。诸位可以把这本书拿给他们看,他们也许会这 样说:现在还有人玩这个?不过不管怎么说,对计算机理解程度的深浅 还是和有没有制作过微型计算机有很大关系的。 笔者真的按照图 2.1 所示的电路图制作过微型计算机,收集零件就 费了不少劲。而在单片机广泛应用的今天,CPU、I/O、内存都被集成 到了一块 IC 上。可话又说回来,即便只是在纸上体验制作微型计算机 的过程,也还是非常有益的。诸位在本章制作了微型计算机,想必这 一体验定会加深诸位对计算机的理解,使诸位越来越喜欢计算机。 在接下来的第 3 章中,笔者会先用汇编语言为微型计算机编写程 序,然后尝试“手工汇编”,即以手工作业的方式将这段程序转换成机 器语言(原生代码)。敬请期待!

 单片机

就是一块集成板对吗,也就是一块简易的微型计算机

介绍一下单片机

单片机(Microcontroller)是一种集成了微处理器核心、存储器、输入输出接口和其他功能模块的集成电路芯片。它是一种专用的计算机系统,具有较小的尺寸和低功耗特性,广泛应用于嵌入式系统和电子设备中。

与通用计算机相比,单片机通常具有以下特点:

  1. 集成度高:单片机将微处理器核心、存储器和各种外设集成在一个芯片上,形成一个完整的计算系统。这种高度集成的特点使得单片机非常适合应用于小型和嵌入式设备中,节省了空间和成本。

  2. 低功耗:由于单片机通常应用于电池供电或要求低功耗的场景,它们经过优化设计以降低功耗。这使得单片机在便携设备、传感器节点、智能家居等领域有着广泛的应用。

  3. 特定功能:单片机通常针对特定的应用领域进行设计和优化,具备特定的功能和接口。例如,某些单片机可能具有模拟输入输出、PWM(脉冲宽度调制)输出、定时器、串口通信等功能,以满足特定应用的需求。

  4. 简化开发:单片机通常提供完整的开发工具链,包括编译器、调试器和开发板等,以便开发人员可以轻松地编写、调试和测试单片机应用程序。这使得单片机的开发相对较为简化和快速。

单片机广泛应用于各个领域,如消费电子、工业控制、汽车电子、医疗设备、家用电器等。它们可用于控制和监测设备、数据采集和处理、通信和网络连接、传感器接口、运动控制等任务。由于其小巧、低功耗和功能丰富的特点,单片机在嵌入式系统中具有重要的地位,并推动了物联网、智能化和自动化等技术的发展。

猜你喜欢

转载自blog.csdn.net/m0_62574889/article/details/131031485
今日推荐