.cnblogs-markdown .hljs { display: block; overflow-x: auto; /*padding: 1.6em 3em !important;*/ padding: 0.5em !important; font-size: 14px !important; background: #272822 !important; color: #FFF; /*max-height: 700px;*/ } .hljs, .hljs-tag, .hljs-subst { color: #f8f8f2; } .hljs-strong, .hljs-emphasis { color: #a8a8a2; } .hljs-bullet, .hljs-quote, .hljs-number, .hljs-regexp, .hljs-literal, .hljs-link { color: #ae81ff; } .hljs-code, .hljs-title, .hljs-section, .hljs-selector-class { color: #a6e22e; } .hljs-strong { font-weight: bold; } .hljs-emphasis { font-style: italic; } .hljs-keyword, .hljs-selector-tag, .hljs-name, .hljs-attr { color: #f92672; } .hljs-symbol, .hljs-attribute { color: #66d9ef; } .hljs-params, .hljs-class .hljs-title { color: #f8f8f2; } .hljs-string, .hljs-type, .hljs-built_in, .hljs-builtin-name, .hljs-selector-id, .hljs-selector-attr, .hljs-selector-pseudo, .hljs-addition, .hljs-variable, .hljs-template-variable { color: #e6db74; } .hljs-comment, .hljs-deletion, .hljs-meta { color: #75715e; }

1、位、字、字节、原码、反码、补码

字 word : 1字=2字节(1 word = 2 byte ) 字长是指字的长度

字节byte :1字节=8位(1 byte = 8 bit)

位 bit

一个字的字长为16

一个字节的字长是8

 

原码 反码 补码

正数:三码合一

负数:

原码:最高位不变,后面数据和其绝对值相同

反码:将原码除最高位,其余按位取反

补码:将反码+1

 

练习:

原码 1011 0100 B 负数

反码 1100 1011 B

补码 1100 1100 B

 

 

补码 1110 1110

反码 1110 1101

原码 1001 0010B

 

137/2

68 1

34 0

17 0

8 1

4 0

2 0

1 0

0 1 010 001 001.1

2 1 1 .4

A3.5

1010 0011.0101 10100011.01010000

128+32+2+1=163.

128+16=144

a3.5

 

10*16^1+3*16^0+5*16^(-1)= 163.

 

 

(E笔记)

关于进制之间的转换:

其他的进制转换为10进制。

4  3  2  1   0  -1  -2

1  1  0  1  1.  1   1  转为10进制

1*2^4+1*2^3+0*2^2+1*2^1+1*2^0+        1*2^-1+1*2^-2

16+     8+        0       +2      +1+                 0.5+     0.25

结果:27.75

10进制转为2进制:

154.56

整数部分:154       逆向取余法

小数部分:0.56      正向取整法

算式                   商          余数

154  / 2              77            0

77/2                  38            1

38/2                  19            0

19/2                  9              1

9/2                   4                1

4/2                    2              0

2/2                   1               0

1/2                   0               1

二进制数:10011010

 

 

算式            结果          取整

0.56 *2        0.12           1

0.12*2         0.24          0

0.24*2         0.48          0

0.48*2         0.96          0

0.96*2         0.92         1

.......

最终得到的结果:10011010.10

 

3685/10          368          5

368/10            36            8

36/10              3              6

3/10                0              3

 

0.856   *10    0.56          8

0.56*10         0.6            5

0.6*10            0              6

以上就是十进制和不同进制之间的转换关系。

原码  反码  补码:

正数:三码合一

负数: 反码是原码  符号位不变   其余取反

            补码是反码+1

例1:已知原码,求补码

例:已知某有符号数X的原码为1011 0100B,试求X的补码和反码。

解:由[X]原=10110100B知,X为负数。

由原码求其反码时,符号位不变,数值部分按位求反;

由反码求其补码时,在其反码的末位加1。

    1 0 1 1 0 1 0 0 原码

    1 1 0 0 1 0 1 1 反码,符号位不变,数值位取反

+ 1 加1

    1 1 0 0 1 1 0 0 补码

故:[X]补=11001100B,[X]反=11001011B。

例2:已知补码,求原码

例:已知某数X的补码1110 1110B,试求其原码

方法:数值部分应是最低位减1,然后取反;

           也可采用取反加1 的方法。

 

解:由[X]补=11101110B知,X为负数。

由补码求反码时,在其补码的末位减1;

由反码求原码时,符号位不变,数值部分按位求反。

    1 1 1 0 1 1 1 0 补码

- 1 减1

    1 1 1 0 1 1 0 1 反码

    1 0 0 1 0 0 1 0 原码 

故:[X]原=1001 0010B。

http://blog.csdn.net/magicxiaoz/article/details/4338467 编程语言的分类

http://blog.csdn.net/charles_fj_sum/article/details/6170084 反码 补码 原码

 

 

 

posted on 2019-08-24 15:48  巧克力怪兽  阅读(1264)  评论(0)    收藏  举报

导航

.cnblogs-markdown .hljs { display: block; overflow-x: auto; /*padding: 1.6em 3em !important;*/ padding: 0.5em !important; font-size: 14px !important; background: #272822 !important; color: #FFF; /*max-height: 700px;*/ } .hljs, .hljs-tag, .hljs-subst { color: #f8f8f2; } .hljs-strong, .hljs-emphasis { color: #a8a8a2; } .hljs-bullet, .hljs-quote, .hljs-number, .hljs-regexp, .hljs-literal, .hljs-link { color: #ae81ff; } .hljs-code, .hljs-title, .hljs-section, .hljs-selector-class { color: #a6e22e; } .hljs-strong { font-weight: bold; } .hljs-emphasis { font-style: italic; } .hljs-keyword, .hljs-selector-tag, .hljs-name, .hljs-attr { color: #f92672; } .hljs-symbol, .hljs-attribute { color: #66d9ef; } .hljs-params, .hljs-class .hljs-title { color: #f8f8f2; } .hljs-string, .hljs-type, .hljs-built_in, .hljs-builtin-name, .hljs-selector-id, .hljs-selector-attr, .hljs-selector-pseudo, .hljs-addition, .hljs-variable, .hljs-template-variable { color: #e6db74; } .hljs-comment, .hljs-deletion, .hljs-meta { color: #75715e; }