世界读书日World Book Day
众所周知我们现在身处数字化的世界,那么究竟什么才是数字化呢?其实所谓的数字化就是以简单的0和1两个二进制数字为基础,对现实世界的各种数据进行搜集、存储、运算并显示的过程,而二进制中的0和1所依托的数字逻辑基础就是数字电路中两种基础状态。虽然我们自然界的各种元素都是模拟的,但信息化的社会已经离不开数字电路带来的0和1。
二进制是现在通用电子信息技术的运算基础,由于二进制仅有0和1两个基础数字,所以任何具有两个不同稳定状态的元件都可用二进制来表达,例如,电压的「高和低」、开关的「开和关」,电流的「正和负」等。一般来讲,利用数字来代表两种截然不同的状态是很容易实现的。在数字电路中,基本的逻辑门实现就直接应用了二进制,因此现代的计算机和依赖电路处理的设备里都延续了二进制的使用。
微控制器中常见的数字值
数字电路组成了芯片的基础,大部分具有数据处理和控制能力的芯片都是数字电路,目前最普遍的处理单元微控制器也不例外。微控制器借助数字电路提供的二进制数字0和1,能够理解「电压高低」、「电流是否流动」、「开还是关」等问题。
微控制器使用的数据是有单位的,当数据用二进制数表示时,一个数字称为一位。一般来讲,我们常见的微控制器可分为4位、8位或16位等,这些位数代表了在一个时钟周期内,微控制器所处理的二进制代码数。但值得注意的是,1K(Kilo)位是1024位,而不是1000位。
在二进制中,半字节(nibble)是一个4位的二进制数,代表1个半字节(4位)的数据。字节(byte)是一个8位的二进制数,代表1个字节(8位)的数据。此外,还可以使用“字”表示处理器所处理的数据。例如,在4位微控制器中,4位数据有时称为1个字;在16位微控制器中,16位数据有时称为1个字。因此,要提前查看在微控制器中1个字的位数是多少,以及如何处理它们。
除了二进制,在数据处理中,十进制与十六进制也是常见的数字值。下图为十进制数、二进制数和十六进制数的对比表。由于二进制数的4位可以用十六进制数中的1位来表示,所以通过采用十六进制数可以使二进制的数据处理起来很方便。
数字值之间的转换
若想将十进制转化为二进制,需要先用数字除以2,然后取余数,再逆序排列的方法。以十进制数100为例,首先要用100除以2。它能被50整除,余数为0。然后,用50除以2得到25,再用25除以2,去掉余数1,继续计算,直到不被整数除掉为止。计算结果的余数从下往上逆序排,便将其转换为了二进制数(1100100)。
那么如何转换为十六进制数呢?如果用100除以16,就是6,余数为4。因此,当十进制数100转换为十六进制数时,就变成了(64)。
无论是控制器还是处理器,无论是简单的单片机还是复杂的服务器,回归到最基础的部分就是这些由简单数字组成的算术单元,在下篇文章中,我们将介绍数字电路中的逻辑运算,请大家继续关注哦~
原文标题:芝识课堂【微控制器基础】——电路中的“数字与逻辑”(上)
文章出处:【微信公众号:东芝半导体】欢迎添加关注!文章转载请注明出处。
全部0条评论
快来发表一下你的评论吧 !