zoukankan      html  css  js  c++  java
  • 新人,请多指教,有个java小问题: bety a=300,强制类型转换,分析我的做法是否正确?谢谢

    byte a = (byte)300;输出结果是多少?

        获取300数据的二进制:

    (系统默认int型)00000000    00000000    00000001   00101100

        因为300为正数所以原码,反码,补码都一样,byte为一个字节长,所以做截取操作后得:

                                                   00101100

    对截取后数据进行原反补的转换的:

                                                符号位                     数值位

                   补码                          0                       0101100

                   反码                          0                       0101011   

                   原码                          0                       1010100

    最后运算结果为:84.但是在java程序运行结果为44,我哪里错了???望指教!!!

     1 class DataType{
     2 public static void main(String[]args){
     3            byte a =(byte) 300;
     4       System.out.println(a);
     5       
     6       
     7       
     8 }
     9 
    10 }

                

                                    

  • 相关阅读:
    共享内存
    文件IO函数和标准IO库的区别
    链表程序
    flash_header.S ( freescale imx6 board)
    深入理解二维数组
    putchar和puts
    指针目标
    C语言:break和continue
    C语言:输入输出
    python lambda
  • 原文地址:https://www.cnblogs.com/ym1027/p/6066339.html
Copyright © 2011-2022 走看看