使用单片机了解计算机系统的结构
文章介绍
【如果想通过计算机解决现实世界中的问题,就需要分析问题,找到解决问题的方法和步骤,也就是解决问题的算法。 一旦有了算法,就需要用编程语言将算法转换成程序,输入到计算机中,计算机执行程序。 那么,程序是如何在计算机上运行的呢? 计算机的内部是怎样组成的? 。 在这篇文章中,我将和同学们讨论计算机的系统组成和程序运行过程。 。 通过本文的学习,您将了解计算机的结构以及使用微控制器构建的计算器程序的执行原理。 】
之前学习过什么是计算机程序、算法和流程图,对计算机编程和算法有了初步的了解。 我知道计算机程序是为完成特定任务并解决问题而编写的一系列计算机指令。 那么,计算机是如何组成的呢? 计算机提供什么顺序的指令? 程序如何在计算机上运行。 带着这些问题,在本节中,我们将与学生一起初步了解计算机体系结构。
生活中,我们一般称计算机为计算机。 我们对计算机并不陌生。 每个人都使用它们。 通过运行计算机上的应用程序,您可以交易股票、看电影、玩游戏、用Word写文章等。并对计算机的外部组件有一个大致的了解,包括显示器、键盘、鼠标、扬声器、主机、电源等。见图1。但是我们对内部结构,即主机箱内部的部件和原理了解不多。 如果我们不学编程,只要会用电脑就够了。 无需深入了解计算机的组成原理。 但对于学习编程的学生来说,了解计算机的组成原理是非常重要的。 至少我们必须认识自己。 你编写的程序如何在计算机上运行? 如何通过输入输出设备读取和输出数据,如何通过内存存储数据等。
图1 计算机外部组织结构
为了更好地理解计算机体系结构,我们使用工业自动化控制中广泛使用的基于单片机构建的计算器。 计算器的组成原理如图2所示。
图2 单片机计算器示意图
从图2可以看出,计算器主要由键盘、数码显示器和单片机组成。
键盘是主要的输入设备,用于输入操作数和运算符。 输入操作数和运算符存储在微控制器的存储器中。 单片机本身有一个4K字节的存储器,可以存储写入的程序和数据。
计算器所需的按键是:
数字键:1、2、3、4、5、6、7、8、9、0
功能键:+、—、*、/、=、C(清除)
总共有16个按键,使用4个程序扫描P1口来完成键盘扫描。 通过对这16个按键进行编码,程序可以获得按下的按键所代表的数字或运算符,从而完成键盘输入功能。 键盘和微控制器之间的连接见图 3。
图3 键盘与单片机连接示意图
键盘编码就是这样考虑的。 键盘上的每个按键都是一个开关。 开关正常状态为打开状态,其状态可设置为0。开关按下后,为闭合状态,其状态可设置为1。假设开关上所有按键均处于关闭状态。键盘处于断开状态,即状态值为0,一次只能按下一个键。 如果按下多个键,则仅识别第一个键,程序将忽略其他键。
键盘按键分为 4 行 4 列。 将按钮 1 设置为第 1 行和第 1 列,将按钮 2 设置为第 1 行和第 2 列。 。 。 。 。 按钮 4 位于第 2 行、第 1 列,依此类推。 按键编码规则为:以按键所在行号的按键状态值作为高4位,以按键所在列号的按键状态值作为低4位,组成8位位代码。 编码时,按键状态值为1(对应其按下状态),其他按键的状态值为0。例如:按键1的代码为1000 1000,按键2的代码为0100 1000,按键2的代码为0100 1000。按钮 9 的值为 0010 0010。
键盘编码完成后,可以设计键盘扫描程序,定时扫描单片机的P1.0~P1.7端口。 当按键被按下时,获取按键代码并将按键代码转换为数字或运算符。 编码程序算法流程图如图4所示。
图4 键盘扫描程序流程图
当计算器打开电源开关后,单片机控制器从存储器中读取计算器的主程序。 主程序调用键盘扫描程序对键盘进行扫描。 主程序每20ms调用一次键盘扫描程序。 扫描程序读取单片机P1.0~P1。 端口7,获取键盘按键状态(键盘编码),从编码表中找到对应的数字或操作符,存入内存,等待主程序下次调用。
数码管是计算器的主要输出器件。 它显示计算的数据和结果。 数码管支持8位数据显示,可显示8位数字。 目前仅使用前4位来显示4位数字,并单独连接。 单片机的P2.0~P2.3。 P2口也是单片机的8位双向IO口。 键盘与单片机的连接方法见图5。
图5 数码管与单片机连接方法
主程序调用显示程序将计算数据和结果输出到数码管。 显示程序算法流程图如图6所示。
图6 程序流程图
主程序调用键盘扫描程序来扫描键盘。 获取键盘输入后,判断输入数据是数字还是运算符。 如果是操作员,则进入操作程序。 如果是数字,则首先将数据存储到单片机内存中,并调用显示程序。 将输入数据显示到数码管。
单片机是计算器最重要的组成部分,是计算器的核心,包括运算单元、控制器、存储器等。 单片机本身具有4K可读写存储器,用于存储程序和数据。 其工作原理如图7所示。
图7 单片机工作原理图
为了告诉计算机要做什么、按什么步骤进行,就需要对它进行编程,使计算机能够按照规定的程序自动工作。 写入的程序和数据预先存储在存储器中,控制器从存储器中取出程序或指令并执行。
控制器是单片机(计算机)的管理组织和指挥中心。 它通过解释存储器中存储的程序代码或指令,不断地向运算器、存储器、输入输出设备发出相关的操作命令。 例如:在某个时间、某种条件下,从内存的指定地址读取数据,输出到输出设备; 在特定时间和特定条件下,从输入设备读取数据并将其存储在存储器的指定地址处。 中间。
运算器是执行算术运算和逻辑运算的部件。 计算器的加、减、乘、除等运算都是由运算单元在控制器的控制下完成的。
内存是存储程序和数据的组件。 存储器由数千个信息单元组成,每个信息单元对应一个位置号。 社区可以算是一个记忆。 社区内所有住户都是社区的信息单位。 每户都有门牌号码,方便查询。 信息单元的位置号就是信息单元的地址,程序可以通过该地址方便地对存储单元进行寻址。
前面已经介绍了计算器的输入设备、输出设备和核心单片机。 您应该了解其架构和工作原理。 我们来看一下计算器主程序的编写思路。 主程序是将键盘子程序和显示子程序连成一个整体,使整个程序循环运行。 进入主程序后,循环调用键盘扫描子程序。 当按下键盘时,判断输入的数字是否为运算符。 如果是数字,则将其存储在内存中。 调用显示程序显示输入的数字; 如果是运算符,则存储在内存中。 ,不显示运算符,等待运算符后面的数据输入; 如果是等号,则从内存中取出数据和运算符进行运算,并调用显示程序显示计算结果。
计算机系统由五个基本部件组成:运算单元、存储器、控制器、输入设备和输出设备。 这种结构也称为冯·诺依曼结构。 其核心思想是存储程序和程序的顺序执行的概念。 一个完整的计算机系统需要具备以下功能:向计算机发送所需的程序和数据。 必须具备长期记忆程序、数据、中间结果和最终运算结果的能力。 能够完成各种算术、逻辑运算和数据传输等数据处理能力。 能够根据需要控制程序的方向,并根据指令控制机器各部件的协调运行。 能够根据需要向用户输出处理结果。
■ 文章摘要
课程中介绍的计算器是一个简单的计算机系统。 别看它小,但是五脏俱全。 从课程中您可以了解到,计算器由键盘、显示管和微控制器组成。 单片机分为三部分:运算单元、存储器和控制器。 因此,一般来说,计算器由键盘、显示管、运算器、存储器和控制器五部分组成。 键盘用于输入操作值,可以称为输入设备。 显示管是用来输出结果的,可以称为输出设备。
计算器的这种结构也称为冯·诺依曼结构。 冯·诺依曼体系结构是由美国科学家冯·诺依曼于1945年提出的,他认为计算机系统是由运算单元和存储器组成的。 它由五个基本部件组成:控制器、输入设备和输出设备。 到目前为止,计算机系统一直采用冯·诺依曼架构。 核心思想是存储程序和程序的顺序执行的概念。 一个完整的计算机系统需要具备以下功能:向计算机发送所需的程序和数据。 必须具备长期记忆程序、数据、中间结果和最终运算结果的能力。 能够完成各种算术、逻辑运算和数据传输等数据处理能力。 能够根据需要控制程序的方向,并根据指令控制机器各部件的协调运行。 能够根据需要向用户输出处理结果。
■思考与实践
1. 在课程介绍的计算器中,存储器起什么作用?
2. 在课程介绍的计算器中,请说出计算器的输入设备和输出设备的名称。
3. 冯·诺依曼架构由哪些部分组成?
4. 在冯·诺依曼架构中,哪个组件负责计算?
5. 在冯诺依曼架构中,请描述控制器的作用。
6、请说明家用电脑常用的输入设备和输出设备。
/r/(自动识别二维码)
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权本站发表,未经许可,不得转载。