博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Java中字节Byte和位Bit的关系及最小值最大值表示
阅读量:4045 次
发布时间:2019-05-24

本文共 601 字,大约阅读时间需要 2 分钟。

java byte最大值最小值问题1.计算机编码1.1 原码、反码和补码在计算机内,定点数有3种表示法:原码、反码和补码。原码:就是二进制定点表示法,即最高位为符号位,“0”表示正,“1”表示负,其余位表示数值的大小。反码:表示法规定:正数的反码与其原码相同;负数的反码是对其原码逐位取反,但符号位除外。补码:表示法规定:正数的补码与其原码相同;负数的补码是在其反码的末位加1。原码、反码不能直接进行数值计算。1.2 计算机数值存储在计算机中,数值均已补码形式存储。2.计算步骤仅以byte为例进行阐述,byte为一字节8位,最高位是符号位。最大值是01111111(补码),补码即原码:最大值为:2^0+2^1+2^2+2^3+2^4+2^5+2^6=(1-2)2^7/(1-2)=2^7-1=127最小值是10000000(补码),首先计算反码(补码-1):01111111然后计算原码:10000000最大值为:-2^7=-1283.等比数列首项是a1,公比是q(q≠1),则Sn=a1(1-q^n)/(1-q);4.byte无符号表示byte a = (byte)234;打印出来的结果为-22,看看原因:首先byte范围-128~127,打印出其他值也属正常。234的二进制位:11101010计算机会把它当成负数,首先计算其反码:11101001然后计算其原码:10010110原码为-22

 

转载地址:http://yxwci.baihongyu.com/

你可能感兴趣的文章
mint/ubuntu安装搜狗输入法
查看>>
C++动态申请数组和参数传递问题
查看>>
opencv学习——在MFC中读取和显示图像
查看>>
Matlab与CUDA C的混合编程配置出现的问题及解决方案
查看>>
如何将PaperDownloader下载的文献存放到任意位置
查看>>
C/C++中关于动态生成一维数组和二维数组的学习
查看>>
JVM最简生存指南
查看>>
Java的对象驻留
查看>>
JVM并发机制探讨—内存模型、内存可见性和指令重排序
查看>>
如何构建高扩展性网站
查看>>
持续可用与CAP理论 – 一个系统开发者的观点
查看>>
nginx+tomcat+memcached (msm)实现 session同步复制
查看>>
c++字符数组和字符指针区别以及str***函数
查看>>
c++类的操作符重载注意事项
查看>>
c++模板与泛型编程
查看>>
WAV文件解析
查看>>
WPF中PATH使用AI导出SVG的方法
查看>>
WPF UI&控件免费开源库
查看>>
QT打开项目提示no valid settings file could be found
查看>>
Win10+VS+ESP32环境搭建
查看>>