软件设计师-计算机组成与体系结构

计算机组成与体系结构(6分)

一.数据的表示

1.进制转换

  • R进制转10进制

    使用按权展开法,其具体操作方式为:将R进制数的每一位数值用Rk形式表示,
    即幂的底数是R,指数为k,k与该位和小数点之间的距离有关。
    当该位位于小数点   左边,k值是该位和小数点之间数码的个数,而当该位位于小数 
    点右边,k值是负 
    值,  其绝对值是该位和小数点之间数码的个数加1。
    
    image-20210714201807523.png
  • 10进制转R进制

    使用短除法
    
image-20210714202222853.png
  • 二进制转八进制与十六进制

    • 二进制转八进制(1->3)

      从右至左每三位为一段,最高段不足三个,高位补0即可,依次使用按权展开法,将二进制转为八进制。
      10000110->216
      
    • 二进制转十六进制(1->4)

      从右至左每四位为一段,最高段不足四个,高位补0即可,依次使用按权展开法,将二进制转为十六进制。
      10001110->8E
      

2.原码补码反码移码

  • 原码:数值转为二进制的表现形式,高位不足8位就补0,若是正数,最高位是0,若是负数,最高位是1.

    原码不可以直接在机器里做直接运算
    若使用原码直接进行运算,则会出现以下情况:
    0000 0001 + 1000 0001 = 1000 0010
    +1 + (-1) = (-1)
    
  • 反码:正数与原码一致,负数的反码是 符号位不变,其余位按位取反。

    正数-原码:0000 0001 反码:0000 0001
    负数-原码:1000 0001 反码:1111 1110 (负数符号位不变,其余位按位取反)
    
  • 补码:正数的补码与原码一致,负数的补码是反码+1。

    正数-原码:0000 0001 补码:0000 0001
    负数-原码:1000 0001 反码:1111 1110  补码:1111 1111  (补码=反码+1)
    
  • 移码:在特定场合使用,用来做浮点运算的阶码,是在补码的基础上,首位取反(无论正负)

    正数-负数-补码:0000 0001 移码:1000 0001 
    

3.数值表示范围

数值表示范围
例子:若n=8 
原码代入上述公式得:-127 ~ +127
反码代入上述公式得:-127 ~ +127
补码代入上述公式得:-128 ~ +127   
(补码表示的取值范围更大一些,原因是因为原码与反码的+0与-0是两种不同的编码,但是补码的+0与-1是0000 0000,少占用了一个编码位)

4.浮点数运算

  • 浮点数:称为科学记数法的表示方式
科学记数法:
1000 -> 1.0 * 10的三次方
119 -> 1.19 * 10的二次方  1.19称为尾数(M),10为基数(R),2次方为指数(e)
浮点数运算
计算方法

二.计算机结构

计算机结构

你可能感兴趣的:(软件设计师-计算机组成与体系结构)