计算机中负数的表示方法(例子取自coursera)

Posted 老猫历险记

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了计算机中负数的表示方法(例子取自coursera)相关的知识,希望对你有一定的参考价值。

今天做coursera测试题的时候,一开始听课不是很清楚,做题的时候还错了一次,第二次总算答对了,好了,先把结果贴出来:

这边打印一个右移2位后的负数,负数在计算机里面是用补码的形式表示,+12由于是整型数据,所以表示为00000000 00000000 00000000 00001100(原码)

-12先要对+12的原码取反:11111111 11111111 11111111 11110011(反码)再对反码+1(0001)

11111111 11111111 11111111 11110100 同时二进制位高位是符号位,所以0100变成1100

最终得到-12的二进制数11111111 11111111 11111111 11111100

用16位进制打印出来就是fffffffd

以上是关于计算机中负数的表示方法(例子取自coursera)的主要内容,如果未能解决你的问题,请参考以下文章

补码原理——负数为什么要用补码表示

补码原理——负数为什么要用补码表示

在计算机中,为啥负数要用补码的形式表示呢?(图文并茂版)

x86汇编学习历程6----负数在计算机中的表示和应用方法(附FLAGS拓展和cmp及条件转移指令)

数在计算机中的表示

计算机中负数的表示法 Twos complement: Negative numbers in binary