学习任务一

一、二进制数的算术运算

算术运算:加减乘除

微机中通常只有做加法的硬件电路。其他三种算术运算均是通过加法电路完成的

1 无符号二进制数的算术运算

(1)二进制加法

无符号二进制加法规则:0+0=0,0+1=1,

1+1=10(注:二进制数逢二进一)

(2)二进制减法

无符号二进制减法规则:0-0=0,,1-1=0,1-0=1,

0-1=11(注:按照十进制数应为-1,二进制中用最高位是0表示正数,最高位是1表示负数,故此处为1

(3)二进制乘法(把被乘数或0左移一位)

可以类比十进制数乘法

(4)二进制除法(把除数右移一位)

可以类比十进制数除法

2 带符号二进制数的算术运算

(1)二进制数的最高位表示符号位,且用0表示正数,用1表示负数。其余部分用原码的形式表示数值位

(2)原码:二进制数的真值

注:真值是现实中用于计算的数据,在计算机中不存在;

正数或负数的真值为其绝对值对应的二进制数前面加上正号或负号;

例如+1表示为+00000001,-1表示为-00000001。

(3)二进制数的补码表示

补码或反码高位表示符号位,且用0表示正数,用1表示负数

二进制数为正数时,补码和反码与原码相同

二进制数为负数时,将原码的数值逐位求反,然后在最低位加1得到补码

注:逐位求反:除符号位逐一求反;最低位加1

(4)二进制数补码减法运算

减法运算的原理:减去一个正数相当于加上一个负数。A-B=A+(-B),对(-B)求补码,然后进行加法运算。

注:二进制数减法需要求补码

因为二进制数的加法和减法都用补码时计算更方便  

3 溢出

溢出的判别

①如何判断是否产生溢出?

同符号位相加惠溢出(绝对值超过有效位数所表示的最大值);

不同符号位相加不会溢出

二、二进制代码

1 二-十进制编码(BCD码)

(1)用若干位码元按一定规律排列起来表示给定信息的过程称为编码

(2)码元:在数字通信中常常用时间间隔相同的符号来表示一个二进制数字,这样的时间间隔内的信号称为(二进制)码元

(3)用4位二进制数码表示一位十进制数0~9十个状态时,这些代码称为二-十进制代码,简称BCD代码。

(4)BCD码需要4位二进制码元,4位二进制码2的4次方等于16种组合,但只用其中10种组合表示十进制数0~9

(5)常用的BCD代码

①8421码

有权编码,从左向右每一位的1分别为8,4,2,1,即这一位的权

②5421码

前提可以用到高位的时候尽量使用权比较高的那一位进行编码;有权编码

③2421码

有权编码;自补代码(以中线为对称轴,存在镜像互补对称的特性)

④余三码

不是有权编码,是自补代码;数值比8421码表示的十进制数多3

2 格雷码(减小代码发生错误的工具)

(1)二进制转换为格雷码的原理:格雷码的最高位等于二进制码的最高位,格雷码的次高位等于二进制码的最高位与次高位的异或,依次类推得到以下公式:若二进制码的最高位为b[n-1],最低位为b[0],格雷码码的最高位为g[n-1],最低位为g[0],则g[n-1]=b[n-1],g[n-2]=b[n-1]^b[n-2];g[n-3]=b[n-2]^b[n-3]……g[0]=b[1]^b[0];

 

       综上所述,将二进制码整体右移一位,然后再与二进制码本身进行异或,得到该二进制码对应的格雷码。对应公式:g[n-1:0]=(b[n-1:0]>>1)^b[n-1:0]。

(2)格雷码转换为二进制码:同理对于格雷码转换二进制可以得到以下规律:二进制码的最高位同样等于格雷码的最高位,二进制码的次高位等于格雷码的次高位异或二进制码的最高位,以此类推得到以下公式,即b[n-1] = g[n-1],b[n-2] = g[n-2]^b[n-1]……b[0]=g[0]^b[1].

(3)由于人为或非人为的原因,代码在计算机或其他数字系统中形成、传送和运算过程中都有可能出现错误。于是人们在提高计算机本身的可靠性的同时,也创造了一些可靠性编码。它们令代码本身具有一种特征或能力,使得代码在形成中不容易出错,或代码在出错时容易被发现,甚至能查出出错的位置并予以纠正。格雷码就是一种可靠性编码。在一组数的编码中,若任意两个相邻的代码只有一位二进制数不同,则称这种编码为格雷码,另外由于最大数与最小数之间也仅一位数不同,即“首尾相连”,因此又称循环码。在数字系统中,常要求代码按一定顺序变化。例如,按自然数递增技术,若采用8421码,则数0111变到1000时四位均要变化,而在实际电路中,4位的变化不可能绝对同时发生,则计数中可能出现短暂的其他代码(1100、1111等)。在特定情况下可能导致电路状态错误或输入错误。使用格雷码可以避免这种错误。

3 ASCII码

(1)组成:

①ASCII打印字符:数字32–126分配给了能在键盘上找到的字符,当您查看或打印文档时就会出现。

②ASCII非打印控制字符:ASCII表上的数字0–31分配给了控制字符,用于控制像打印机等一些外围设备。

③扩展ASCII打印字符:扩展的ASCII字符满足了对更多字符的需求。扩展的ASCII包含ASCII中已有的128个字符,又增加了128个字符,总共是256个。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值