`

为什么byte取值是-128到127

    博客分类:
  • java
 
阅读更多

建议你baidu下“补码”,就会比较清楚了,第一位是符号位。
00000000 => 0
11111111 => -1
10000000 => -128
01111111 => 127


◎ 负数的补码
  负数的补码是对其原码逐位取反,但符号位除外;然后整个数加1。
  同一个数字在不同的补码表示形式里头,是不同的。比方说-15的补码,在8位2进制里头是11110001,然而在16位2进制补码表示的情况下,就成了1111111111110001。在这篇补码概述里头涉及的补码转换默认了把一个数转换成8位2进制的补码形式,每一种补码表示形式都只能表示有限的数字。
  【例2】求-7的补码。
  因为给定数是负数,则符号位为“1”。
  后七位:-7的原码(10000111)→按位取反(11111000)(负数符号位不变)→加1(11111001)
  所以-7的补码是11111001。
  已知一个数的补码,求原码的操作分两种情况:
  (1)如果补码的符号位为“0”,表示是一个正数,其原码就是补码。
  (2)如果补码的符号位为“1”,表示是一个负数,那么求给定的这个补码的补码就是要求的原码。
  再举一个例子:求-64的补码
  +64:01000000
  11000000

分享到:
评论
1 楼 Tough小白 2016-11-30  
11111111 11111111 11111111 11111111  补码
11111111 11111111 11111111 11111110  反码
11111111 11111111 11111111 10000001  原码
                                 -1  最大负数
11111111 11111111 11111111 10000000  补码
11111111 11111111 11111111 01111111  反码
11111111 11111111 11111111 10000000  原码
                               -128  最小负数
00000000 00000000 00000000 00000000  0
00000000 00000000 00000000 00000001  正数原反补都一样
                                  1  最小正数
00000000 00000000 00000000 01111111  正数原反补都一样
                                127  最大正数
Java语言默认数据类型是int,四个字节,byte只有一个字节,应该先在4个字节下取到一个字节的所有数,再确定byte类型一个字节的取值范围。

相关推荐

    1-PDF417编码演示程序

    例如20 byte左右数据量,取值范围可设3-5; 纠错等级 条码污损后的纠错能力,取值范围0-7,建议取1-3; 长宽比例 条码单位长度和宽度比例,取值范围1-5; 1----紧凑型条码,生成条码图片容量最小,适合配合...

    java面试题-附答案

    byte属于Java中的整型,长度为1字节8bit,取值10000000(-128)到 01111111(127),变量初始化默认值为0,包装类Byte 2.short short属于Java中的整型,长度为2字节16bit,取值10000000 00000000(-32768)到 ...

    VB ASP MD5 SHA HMAC AES GZIP BASE64 微信公众号EncodingAESKey 十全大补DLL

    分块取值有几种情况 1: iStart = 0 , iEnd = 1024 * 1024 * 1 '读取前面1M 2: iStart = -1024 * 1024 * 1 , iEnd = 0 '读取后面1M 3: iStart = 10, iEnd = iStart + 10 '读取第10个字节后的10个字节 (10-20) 4: i...

    Java数据类型及对应取值范围

     byte Byte 【-128,127】 1个字节(【-2的7次方,2的7次方-1】) 一个字节有8位  short Short 【-32768,32767】 2个字节(【-2的15次方,2的15次方-1】) 2*8-1  int Integer 【-2147483648,2147483647...

    Java程序设计基础:基本数据类型.pptx

    -27~-27 -1即-128~127 short 2字节(16位) -215~215 -1 int 4字节(32位) -231~231-1 long 8字节(64位) -263~263 -1 浮点型 类型名称 占用存储空间 取值范围 float 4字节(32位) -3.403E38~3.403E38 double 8...

    Java的8大基本数据类型.pdf

    整型 byte数据类型是8位, 1个字节,默认值:0,取值范围:(-128 - 127); short数据类型是16位,两个字节,默认值:0,取值范围:(-2^15 - 2^15 -1); int 数据类型是32位,4个字节,默认值:0,取值范围:(-2^31 ...

    汇编操作串口的LIB库

    使用 OpenPort dwPort:DWORD, dwBaud:DWORD, bByteSize:BYTE, bStopBits:BYTE, bParity:BYTE ; 参数 dwPort: 串口号 ; dwBaud: 波特率 ; 取值范围:CBR_110, CBR_300, CBR_600, CBR_1200, CBR_2400, CBR_4800 ...

    原码,反码,补码详解及原理.docx

    原码 (1) 原码:在数值前直接加一符号位的表示法。 例如: 符号位 数值位 byte的取值范围 [+7]原= 0 0000111 B [-7]原= 1 0000111 B 注意: byte的取值范围是-2^7~ 2^7-1 总计256个数 ...有符号位 -128 ~ +127

    java课件 主类结构

    java 课件资源 学习java的一些基本结构 使用byte关键字来定义byte型变量,可以一次定义多个变量并对其进行赋值,也可以不进行...取值范围也是最小的,只在-128和127之间,在使用时一定要注意,以免数据溢出产生错误。

    c#数据类型基础

    1.值类型 值类型包括简单值类型和...-128-127 SByte byte 无符号8位整数 0-255 Byte short 有符号16位整数 -32768-32767 Int16 ushort 无符号16位整数 0-65535 UInt16 Int 有符号32位整数 -2147

    Java byte 位移操作 注意事项

    & | ^ (加,减,乘,除,右移,左移,无符号右移,位与,位或,位异或)操作,均会是首先将byte转化为int, 再行运算。这一事实可能导致多种问题:  假设我们想进行如下byte运算: 1111 1000 右移1位,再与0000 ...

    SCJP考试真题和解析

    1. Which of the following range of short is correct?  A. -27 -- 27-1 ...另外需要说明的是java中所有的整(Integral)数(包括byte,short,int,long)全是有符号的。 ---------- 就是这个样子的

    windows钩子编程大全

    其中地址xxxxxxxx就是IAT中一个IMAGE_THUNK_DATA结构的地址,[xxxxxxxx]取值为IMAGE_THUNK_DATA 的值,即IMAGE_IMPORT_BY_NAME的地址。在操作系统加载PE文件的过程中,通过IID中的Name加载相应 的DLL,然后根据INT或...

    linux的安装过程介绍

    前导码(1Byte) + 流水码(1Byte) + 数据区数据长度(1Byte) + 数据区数据(0-255 Byte) + 校验码(2Byte) +结束码 前导码:由MCU发送给DSP的指令都以“$”开头,由DSP发送给MCU的指令都以“ & ”开头 所有返回执行结果...

    MFC.rar_MFC bool_True

    下面这些是和Win32程序...BOOL:布尔值,取值为TRUE or FALSE BSTR:32-bit 字符指针 BYTE:8-bit整数,未带正负号 COLORREF:32-bit数值,代表一个颜色值 DWORD:32-bit整数,未带正负号 LONG:32-bit整数,带正负号

    SCJP试题 中英文对照

    SCJP试题 中英文对照 Which of the following range of short is correct? A. -27 -- 27-1 B. 0 – 216-1 C....另外需要说明的是java中所有的整(Integral)数(包括byte,short,int,long)全是有符号的。

    PDF417二维码编码,

    例如20 byte左右数据量,取值范围可设3-5; 纠错等级 条码污损后的纠错能力,取值范围0-7,建议取1-3; 长宽比例 条码单位长度和宽度比例,取值范围1-5; 1----紧凑型条码,生成条码图片容量最小,适合配合...

    java笔试题(英文版有答案与讲解)

    java笔试题,英文版有答案与讲解。 1. Which of the following range of short is correct? A....B....C....D....翻译:下面哪些是short...另外需要说明的是java中所有的整(Integral)数(包括byte,short,int,long)全是有符号的。

    delphi7.0天固门锁接口

    例4: 当读取卡号为234D833A78、楼栋号为2、楼层号为10、房间号为10101、套间号为3、开始时间为2007-10-10 12:20:23、 结束时间为2007-10-11 12:00:08的可开特权门的新宾客卡时, 函数返回值:234D833A78,1,2,10,...

Global site tag (gtag.js) - Google Analytics