数字电路逻辑设计第1章 数字逻辑基础

发布于:2021-07-31 16:10:26

第1章 数字逻辑基础 本章主要介绍进位计数制的表示方法, 以 二进制为重点, 讨论各种进制数的相互转 换, 带符号数的代码表示法, 码制和字符 的编码方法等。 ? §1.1 进位计数制 ? v 1 1 0 1 0 t 图1-1 图1-2 ? 1.1.1 ? 数制与十进制数的表示 用数字量表示物理量的大小时, 仅用一位数 码往往不够用。因此, 用一组统一的符号和 规则表示数的方法, 常用进位计数的方法组 成多位数码使用。我们把一组多位数码中每 一位的构成方法以及从低位到高位的进位规 则称为数制。 ? 在日常生活中,人们通常采用十进制数来计 数,每位数可用10个数码之一来表示,即:0, 1,2,3,4,5,6,7,8,9。十进制的基数 为10。 十进制数的表示: ? 原则上说,一个数可以用任何一种进位计数制来 表示和运算,但不同数制其运算方法及难易程度 互不相同。选择什么样的进位计数制来表示数, 对数字系统的性能影响很大。例如: 632.45 = 6×102 +3×101 +2×100 +4×10-1 +5×10-2 ? 一般说来,对于任意一个十进制数N,可用位置 计数表示如下: ? (N)10=( kn-1kn-2 … k1k0 .k-1k-2 … k-m )10 ? 按权展开的表示法: ? (N)10=kn-1×10n-1+kn-2×10n-2+ … k1×101+k0 ×100 + K-1 ×10-1 … K-m ×10-m =∑ki×10i (i=-m ? n-1) 1.1.2 二进制数的表示 数字系统中使用的进位制并不仅限于十进制,当进位 基数为2时,称为二进制。在二进制中,只有0和1两 个数码。二进制的计数规则是由低位向高位“逢二进 一”, 即每位计满2就向高位进1,例如,(1101)2就 是一个二进制数。不同数位的数码表示的值不同,各 位的权值是以2为底的连续整数幂,从右向左递增。 ? ? ? ?二进制数的表示: (N)2=(kn-1kn-2?… k1k0 .k-1k-2?… k-m?)2? ? = ∑ki×2i (i=-m ? n-1) ? 在数字系统中,常用二进制来表示数字并进行 运算。因为它具有如下特点:? ? (1) 二进制数只有0或1两个数码,任何具有两 个不同稳定状态的元件都可用来表示1位二制 数, 例如, 晶体管的导通和截止, 脉冲信 号的“有”或“无”等。 ? (2) 二进制运算规则简单。其运算规则如P2表 1.1.1所示: ? 1.1.3 任意进制数的表示 ? 一般说来,对于任意的数N,都能表示成以R 为基数的R进制数。数N的位置记数法为: ? (N)R=(kn-1kn-2 … k1k0 · k-1k-2?… k-m)R ? 而相应的按权展开表示法为:? ? (N)R=kn-1×Rn-1+kn-2×Rn-2+ … +k1×R1+k0×R0 ?+k-1×R-1+k-2×R-2+ … k-m×R-m ? ? = ∑ki×Ri (i=-m ? n-1) ?? §1.2 ? 数制转换? 1.2.1 二进制数与十进制数的转换 ? 在计算机和其他数字系统中,普遍使用二进 制数, 采用二进制数的数字系统只能处理 二进制数和用二进制代码形式表示的其它进 制数。而人们*惯于使用十进制数,所以, 在信息处理中首先必须把十进制数转换成计 算机能加工和处理的二进制数进行运算,然 后再将二进制数的计算结果转换成人们*惯 的十进制数。 ? 按权展开法: ? ? ? ? ? ? ? 例如:(11010.101)2=1×24+1×23+0×22+1×21+0×20 ?+1×2-1+0×2-2+1×2-3?? =16+8+2+0.5+0.125? =(26.625)10 十进制数转换成二进制数时,将待转换的数分成整数 部分和小数部分,并分别加以转换。一个十进制数可 写成: (N)10=(整数部分)10?. (小数部分)10? 转换时,首先将(整数部分)10转换成(整数部分)2; 然后再将(小数部分)10转换成(小数部分)2?。待整数 部分和小数部分确定后, 就可写成:? (N)2=(整数部分)2 .(小数部分)2? 1、整数转换 ? ? ? ? ? 十进制数的整数部分采用“除2取余”法进行转换, 即把十进制数除以2, 取出余数1或0作为相应二进制 数的最低位,把得到的商再除以2,取余数1或0作为 二进制数的次低位,依次类推,继续上述过程,直到 商为0,所得余数为最高位。 例如,将十进制整数58转换为二进制整数,先把它写 成如下形式: (58)10=(kn-1kn-2?… k1k0)2 = kn-1×2n-1+kn-2×2n-2? +…+k1×21+k0×20 =2(kn-1×2n-2+kn-2×2n-3+…+k1)+k0? 只要求出等式中的各个系数kn-1、 kn-2、… k1、k0便 得到二进制整数。 具体转化法: ? ? ? ? ? ? ? ? 2 58 2 29 2 14 2 7 2 3 2 1 0 k0=0 k1=1 k2=0 k3=1 k4=1 k5=1 2、纯小数转换? ? ? ? ? ? 十进制数的小数部分采用“乘2取整”法进行转换, 即先将十进制小数乘以2,取其整数1或0作为二进制 小数的最高位;然后将乘积的小数部分再乘以2,并 再取整数作为次高位。重复上述过程,直到小数部分 为0或达到所要求的精度。如:将十进制小数0.625 转换为二进制小数,需把它写成如下形式:? (0.625)10=(0.k-1k-2?… k-m?)2 =k-1×2-1+k-2×2-2+ … +k-m×2-m =k-1/2+1/2 (k-2+ … +k-m×2-m+1)? 只要求出各系数k-1、 k-2、… 、k-m,便可得到二进 制小数。 具体转换方法 :? ? ? ? ? ? ? ? 0.625 x) 2 1.250 x)

相关推荐

最新更新

猜你喜欢