罗泽兵 发表于 2024-4-15 08:54:56

07.第07节课第二章数据的表示和运算

同学们大家好,我们上一小节讲到了进位计数及其相互转换,那我们第二小节接着往下讲。啊,这一小节的主要内容是无符号数和有符号数的主要内容。首先我们来看一下无符号数是什么啊?首先我们看一个概念,就是寄存器的位数,寄存器的位数通常是称为什么啊?称为我们的机器自长。机器自长那无符号处表示的是什么?是寄存器的每一位均可用来存放数值。啊,咱们的寄存器当中的每一位都可以用来存放我们对应的数值,就是没有符号位,

单纯的是数值,比如说我们八位。啊八位二进制数表示的数的范围是零到二五五,然后16组16位二进制数表示的是零到六五五三五。啊,无符,这里是无符号数表示的数的一个范围,就是每一位它都可以用来存放数值,每一位都可以用来表示咱们的数啊,这是一个存放数据的范围。那么,机器最长相同的时候啊,无符号数与有符号数的数字范围是不同的,为什么呢?那我无符号数,

它每一位都可以用来存放数字。而有符号数的话,就是它是要存在符号位的啊,所以他们表示啊,符号位是要占用他们的啊位数的,所以表示的数字的范围是不同的。那我们看一下什么是有符号数,首先我们要理解两个概念,一个是机器数,一个是增值啊,什么是机器数,什么是增值计算题中对数据符号,为了表示啊。在计算机中对数据进行运算操作时,符号位是否也同数值一道参加运算呢?

如何参加运算呢?那真值表示的是什么?那我们数值数据的实际值就是我们的真值,而数值数据当中的实际的值就是我们的真值,比如说257,比如说负33,比如说一零一一b。等等,这些实际的数值表示的是真值,那我们把符号位和数字位一起用二进制编码去表示,一起用二进制编码去表示,产生了我们的。机器数机器数啊,同时也产生了补码原码反码乙码等数据编码的各种方式啊,什么是补码,

什么是反码,什么是原码,什么是乙码?我们后面还会再详细的讲解啊,机械数是什么呢啊?也就是也称为机器码,机械数也称为机器码。它表示的是数值数据在计算机内的一个编码,表示也就是我们真值,每一个真值对应了一个机器数,对应了一个机器码,它的机器。内的一个编码表示是什么?一个真值对应的机械数机器码啊,我们称它对应的编码表示称为机械数和机器码原码无码反码,

它们有一个共同的特性。好,我们先说一下哈,这几种编码表示中正式的编码与真值是一样的。复数它是有不同的编码的,编码的高位为符号位最高位,我们称之为符号位啊,用零表示正用一表示负,我们要记住这一点啊好。编码那就是补码反码原码啊,正数的编码和真值是一样的,因为正数它是没有符号位的啊,而负数它就是不同了,负数就有不同,那负数我们需要有一个符号位。

那符号位怎么来表示?用什么来表示?用零表示正啊,用一来表示负,用一来表示负哈。针对这几个概念上的问题,我们接着往下看啊,机械数与真值,那真值我们可以看哈带符号的数啊,真值是带一些带符号的数啊,是在机器当中的实际的值。实际的数值的值,然后机器数是符号数字化的数,是将带符号的数进行一个数字化来表示进行一个编码,表示就称为我们的机器数。

啊,比如说我们的零点一零一一啊,是一个正的啊,那我们呃。小数点位啊,它有一个小数点位啊,还有一个是什么符号位?我们这里的零代表的是一个符号位。这里代表的是小数点位啊,这里后面代表的是它的数值负的零点,我们用零来表示的是什么?是正啊,用一表示的是负啊,用一表示的负啊。前面的最高位表示的是符号位就是一啊小数点位,

然后是一零一一小数点的位置哈。比如说正的一一零零,我们用机器数来表示是什么?就是零一。零一一零零,它的小数点位在哪里呀啊?在这个最后面在这里对不对?在小数点位我们嗯,把真值转换成机械数的时候注意的两点就是一个它的是符号位,一个是小数点。点的位置在哪里?小数点的位置在哪里?同同样负的一一零零,它的继续数的表示是一啊,是这个样子的哈,

一一一零零啊,小数点位在那,最后一位在零后面。这是我们增值和这些数对应的一个表示方法。对应表示,方法要注意的是什么?是符号位和小数点位的位置。零表示的是正啊,一表示的是负我们用最。高位来表示,它的一个符号位。当我们知道了基数和增值之后,我们来继续看一下哈源码是什么源码的,表示法是什么。首先我们看一下它的定义哈。

符号位啊,是什么符号位零表示正一表示负那数字部分呢?数值部分,它与真值的二进制的形式是一样的,好原码就表示数值部分与真值的二进制形式是一样的。那整数哦,原码我们又可以分为整数部分和小数部分啊,整数怎么用来表示我们可以由这个公式来表示它x的原码等于如果是x大于等于零小于二的N次方。那么我们。用零来表示啊,然后如果是x大于负的二的N次方小于等于零,我们用二的N次方减x来表示啊。啊x为真值,啊x为真值,n为整数的位置,

a为整数的位移。xx表示的是它的真值。n表示的是整数的位置哈,这里的含义,这是我们的一个公式啊,看这个看不明白的话,我们来看一下实际的例子哈,比如说x它真值是。正的一一一零,那么它的原码的表示是什么啊?原码的表示是什么?就是零逗号一一一零,我们这个逗号用逗号来将符号位和数字部分来进行分隔,分隔开来哈,我们嗯来区分一下。

符号位和真值部分符号位和真值部分。那x如果是负的一一一零,我们怎么来表示啊?怎么来表示啊?就是x的原码等于二的。四次方减去括弧里面负的一一一零啊,我们得到什么啊?得到什么?还有这二的四次方加上个一一一零嗯。得到的是一逗号一一零零对吧?一零零好,我们符号位对应的是最高位符号位对应的是最高位啊符号位对应的。一个带符号的绝对值,表示带符号的绝对值,表示哈。

带方的绝对值表示,方法是这个样子的好,我们记住这个公式啊,如果说x大于等于零啊y=0小于二的n次幂啊,我们用什么?啊用零来表示,如果x大于负的二的n次幂啊,小于等于零啊,也就是我们对应的呃。对应的这个x等于负的一一一零啊。我们用这个来表示嗯,它的原码也就是说。正嗯嗯,正的嗯,正的符号位我们用零来表示负的符号,

我们用什么啊?用一来表示,一来表示负零表示正与真值的二次形式相同,后面。数与真值的二分之一的形式是相同的一样的,我们来看一下小数部分的表示啊,原码等于当x大于零小于一时啊,我们就跟它的机器数的真值是一样的。当x大于负一,小于等于零的时候,就用一减去它的一个真值啊x为真值x为真值,比如我们看一个例子。x等于个啊,它的真值是正的零点一一零一啊,它的原码我们原码就可以表示为什么?

它是什么呢?它是大于等于零小于一的,还有一个范围就等于x=xx就是这个啊x就是这个,然后点儿这个小数点儿代表的是用小。知识点将符号位和数字部分进行一个隔开,小数点将符号位和数字部分进行隔开。如果它是负的的话,我们就用这个来表示啊,用这个来来原用一减去它的一个真值,减去它的真值。那老师一点一一。零一啊,用小数点来表示将符号位隔开啊,再比如说这个啊正的零点一零零零啊,它的原码是零点一零零零,

用小数点将符号位。隔开。负的同样啊,如果它是一个负的,我们就一减去它得到的是一点零零零。这是小数小数部分小数部分。这样的我们对应的每一个部分啊,这个高位呃高位,它的那个符号位呃,用正的用零表示啊。高位嗯,用高位用一来表示负的,用一来表示正的,用零来表示负的,用一来表示同样一个道理哈,

这是我们源码的一个表示方法。啊,我们来举一个例子啊,比如说我们知道啊源码的呃,它已知x的源码为这个为一点零零零一一求x的值,我们怎么样来解?啊,我们由定义可以得到x等于什么?x=1减去个啊。x的源码就等于一减一点零零一一等于一个负的零零零点零零一一啊,或者零点一一,因为我们可以看到它这个地方最高位是一,所以它是一个负数。负是吧,是一个负的,

负的话,我们靠公式得啊,是一减去它的一个原码,得到了一个这个值,那么我们可以从里求出来它的一个x的真值,真值再求出来。它是一个负的啊,由负的可以得到,我们是负的零点零零一一。再看一个例子,我们已知x的原码等于一零逗号一一零零啊,求x啊,求x。由定义我们可以得到它是一个什么呃。最高位是一得到它是一个负的啊,

是一个负的啊,是一个负的是一个负号位是负值,然后可以得到它的那个真值的部分是一一零零啊,我们由定义。可以这样得出,同样我们可以用它的概念,也可以得出这个值。再看一个例子,比如说我们的源码啊,得到了一个小数部分是吧?小数部分它的最高位是什么啊?我们看到它的最高位是零,它说明它是一个正值正值的话,它的原码是这个值,我们它的一个真值的话是正号啊,

加零点。一一零零求x=0的源码啊x=0的源码怎么求呢?我们设x等于正的零点零零零,然后它的一个源码就等于这个啊x等于。负的,如果说x的符号位是负的啊,是负值啊,源码是这个,所以说我们可以对于整数啊零。的源码和呃,它的真值是不一样的哈呃,正零源码不等于负的零的源码啊,不等于负的零的源码。连法的特点,我们可以有以上的讲解,

可以看到它比较直观,便于进行乘法和除法运算。但是加法和加加法和减法运算就是不是特别方便,因为符号我也不能直接参与它们的运算,所以我们的加法运算和减法运算比较复杂。但是原法做加法时会出现一系列的问题,就比如说好我们做加法啊,然后数第一个数是正的,第二个数也是正的啊,实际操作进行加法啊,正加正的等于正数。好在做加法的时候,第一个数是正的,第二个数是负的,然后实际操作,

我们做的是一个减法啊嗯,他得到的数可能是正,也可能是负数。啊做加法,如果是负的,第一个是负数,第二个就是做减法的话,他得到的也可正可负,然后做如果是两个负的的话,做加法可以得到一个是负数。好,能否只做加法呢?嗯,如果我们要只做加法,就叫找到一个与负数等价的正数来看,

代替这个负数,那么我们就可以把减法变成所以转换成一个加法。小上的一个加法哈,这是我们源码的特点,那我们看完源码之后再了解一下我们的补码是什么?嗯,补码是什么?首先我们看一下补码的概念,我们看一个例子哈,这是一个时钟,我们可以看到这一个表,对吧?我们逆时。时针看哈逆,时针看如果是六点的话啊,

如果是六点啊。我们可以呃,我们如果想得到,想在想想想在三点啊,想在如果说我们想得到三点的话,我们可以怎么着?呃,我们可以呃,对它进行对六减六点的时候,我们想把它变成三点,我们可以进行怎么着进行?减三减三得到了三点,那当然,我们可以逆时针的时候,我们是减三,

我们顺时针的话,我们加九个小时啊,对吧?加九个小时得到十五十五,同样也是三,也是三点,对不对?零三年。那那么这个咱们这个时钟的话,它是以什么时钟是以12为模,以12为模的,对不对?啊,我们现在是六点,我们想要把它变成三点的时候,

我们可以往后退三个小时,也可以往前啊,继续走呃九个小时,然后就得到了三点,对吧?它同样是以磨为。12为模的哈以12为模的好减三啊嗯,同样我们就可以知道减三可以用加九来代替,对吧?葛老师,同样的值可以用嗯,就是说我们刚才也说到过用减法哈,用减法代替了一个。先用减法用加法代替了一个减法,对吧?

称加九那我们就称加上九是减去三以12为模的一个补数是吧?是一个补数。嗯,记住负三等于嗯,以12为模的啊嗯,以12为模九啊九,以12为模的股数啊。同理,我们减四啊,等于一个加八对吧?减四和加八就是八正八是负四以12为模的一个补数啊,以12为模的补数。啊,同理就是负五啊,是七+7是以负是以减五嗯,

是减五以12为模的读数是减五以12为模的读数啊,这里的一个模是12。这就是我们补数的一个概念啊,一个概念,然后就是这种方法可以把减法啊用加法代替咱们的减法,用加法代替了一个减法。嗯,我们可以得到结论一个复数上,加上模即得该复数的一个补补数啊,正数的补数即为该正数的本身。啊,计数器啊,比如说我们计数器以16为模嗯幺零幺幺啊,转化成零零零。幺零幺幺啊,

减去幺零幺幺得到零零零,也就是说正数的复数就为该正数的本身。它同样可以加上零一零一得到的是一零零零啊,一自然去掉嗯,把它去掉嗯。可见,我们负的一零一一可用正的一零一零一来代替来进行代替啊,以16为模,这里是以16为模。我们记作是嗯,正的零一零零嗯,是以16为模的。负的一零一一的补数,同理,我们可以这样进行计算好,

还可以得到以八为模的呃补数,以二为模的补数等等啊,都是这么一个道理。磨的一个概念是什么?我们刚刚提到了哈,这也就是说我们计算机中运算器,计数器和寄存器计数器都有一定的位置。啊,不可能容纳无限大的任意的数啊,我们计算机当中,不管是做运算也好,存储数据也好,还是进行计算计数也好,都有一定的存储容量啊,也就是说我们这个。

内存当中,存储容量是一定的,都有一定的位数,它不可能去容容纳很多很多无限大的任意数,那我们当运算结果超出实际最大表示范围的时候。就会发生什么,发生溢出啊,此时此时产所产生的溢出就是就叫什么膜啊,就就叫膜,比如说我们十进制啊。十进制的数嗯,就是以十为模对吧啊,16进制十二十二的就是以12为模。因此,我们可以把模定义为计量器的一个容量,

如果一个四位的计数器,它的数值表示为什么四位的计数器表示的就是呃二的四次方就是。零到15啊,当计数器满15之后再进行加一,这个计数器就会发生溢出,溢其溢出的量为多少为16,也就是说这个模就等于16。它的模等是16。定点小数溢出量为二啊,是以二为模啊,一个至长为n+1位的定点整数溢出量为二的n+1。次方即以二的n+1为模,以二的n+1为模,因为我们在机器当中都是以零和一来表示数据的是吧?地点小数一直量为什么就是就是我们的就是以二为模啊,

一直量为二。它的字长为多少啊?字长如果是2 n+1,那么它最大的表示数就是二的n+1次方啊,就是以二。人家又没播。好,那我们看到了源码的定义,知道了溢出这个概念啊,也知道了咱们的溢出这个概念,那我们再往后看看我们的。补码定义什么是补码啊?什么是补码啊?补码它首先它的符号位啊,有两部分也是啊,

我们在看概念的时候要注意的是两部分内容,第一个是符号位,第二个是数字部分。啊符号为用零表示正一表示负是同样的啊,同样的是用零来表示正的啊,一表示负的它的数字部分正数不变,负数通过求和。得到就是按位取反,末位加一按位取反,末位加一整数部分,我们可以来看一下哈,它的补码x的补数x的补码等于如果说x大于等于零小于二的a次幂。啊,我们的补码用零啊啊,所以用零来表示,

如果说x大于。等于负的二的N次方以2 n+1为模啊。呃,小于零,那么我们的补补码来表示就是就是2 n+1次方,加上xx为真值n为整数的位数。好比如说我们来看例子。当它的均值为正的一零一零时啊,那么它对应的补码是什么?正数它不变啊,正数的值是不变的,我们就把这个零把这个符号位啊,符号位是什么?是正数是用零来表示零逗号。啊,

用逗号来分隔开一零一零,你用逗号将符号位和数字部分分隔开,这就是它的补码啊。数字部分是正数不变,正数不变哈。然后他的复数啊,我们看。


页: [1]
查看完整版本: 07.第07节课第二章数据的表示和运算