8大基本数据类型各占多少字节和一些单位常识

基本数据类型

整数型:byte short int long
浮点型:float double
字符型:char
布尔型:boolean

这八种基本类型都有对应的包装类,分别为:Byte、Short、Integer、Long、Float、Double、Character、Boolean。

引用数据类型

类(class) 接口(interface) 数组(array)
在这里插入图片描述

基本数据类型占字节数

可以使用代码求法利用包装类中的静态变量SIZE来计算:

//byte类型所占的字节数求法
                System.out.println("byte的二进制位数为:" + Byte.SIZE);
                System.out.println("byte所占的字节数为:" + Byte.SIZE/8);     //一个字节占8个二进制位   

在这里插入图片描述

数据类型字节默认值
byte10
short20
int40
long80
float40.0f
double80.0d
char2‘\u0000’
boolean4(根据编译环境而定)false
  1. 关于boolean占几个字节,众说纷纭,虽然boolean表现出非0即1的“位”特性,但是存储空间的基本计量单位是字节,不是位。所以boolean至少占1个字节。
    JVM规范中,boolean变量当作int处理,也就是4字节;而boolean数组当做byte数组处理,即boolean类型的数组里面的每一个元素占1个字节。

  2. \u开头的是一个Unicode码的字符,\u0000代表的应该是NULL,输出控制台是一个空格,其余可以查看Unicode表,Unicode字符通常用十六进制编码方案表示,范围在’\u0000’到’\uFFFF’之间,Unicode可同时包含65536个字符,ASCII/ANSI只包含255个字符,ASCII/ANSI实际上是Unicode的一个子集,\u0000到\u00FF表示ASCII/ANSI字符。

  3. 1Byte(字节或B)=8bit(位或b或比特)
    1KB(Kilobyte 千字节)=1024Byte
    1MB (Megabyte 兆字节 简称“兆”)=1024KB
    1GB (Gigabyte 吉字节 又称“千兆”)=1024MB
    1TB (Trillionbyte 万亿字节 太字节)=1024GB
    1PB(Petabyte 千万亿字节 拍字节)=1024TB
    1EB(Exabyte 百亿亿字节 艾字节)=1024PB,
    1ZB (Zettabyte 十万亿亿字节 泽字节)= 1024 EB,
    1YB (Yottabyte 一亿亿亿字节 尧字节)= 1024 ZB,
    1BB (Brontobyte 一千亿亿亿字节)= 1024 YB.

  4. 位:"位(bit)"是电子计算机中最小的数据单位。每一位的状态只能是0或1。

  5. 字节:8个二进制位构成1个"字节(Byte)",它是存储空间的基本计量单位。1个字节可以储存1个英文字母或者半个汉字,换句话说,1个汉字占据2个字节的存储空间。

  6. 字:"字"由若干个字节构成,字的位数叫做字长,不同档次的机器有不同的字长。
    例如一台8位机,它的1个字就等于1个字节,字长为8位。如果是一台16位机,那么,它的1个字就由2个字节构成,字长为16位。字是计算机进行数据处理和运算的单位。

  7. KB:K在二进制中表示1024,也就是2的10次 方。1KB表示1K个Byte,也就是1024个字节。

  8. 2的8次方=2*2*2*2*2*2*2*2=256,二进制化成十进制

  9. 在Java中整型、字符型被视为简单数据类型,这些类型由低级到高级分别为:
    (byte,short,char)–int–long–float–double
    注意,整数比浮点数低级。低级到高级可以自动转换。而高级到低级需要用代码强制转换,不强转会编译错误。

  10. 浮点型数值,默认是double类型的,想要float,数值后面别忘加个f

### 回答1: MAC帧是在数据链路层中用于在网络节点之间传输数据的格式。它包含以下字段: 1. 目的地址(6个字节):指示帧将发送到哪个网络设备。 2. 源地址(6个字节):指示发送帧的网络设备。 3. 类型/长度(2个字节):指示数据的类型或长度。如果该值小于或等于1500,则表示数据长度。否则,它表示数据类型。 4. 数据(46-1500个字节):包含传输的实际数据。 5. 帧校验序列(4个字节):用于检测帧中的错误。 帧头和帧尾之间的所有内容都被称为帧体。因此,整个MAC帧的大小在64到1518个字节之间,其中包括帧头、帧体和帧尾。 ### 回答2: MAC(Media Access Control)帧是在数据链路层上用于传输和管理数据的一种格式。它包含以下几个字段和各字段的大小: 1. 帧起始(Preamble):用于同步接收和发送方的时钟,长度为7字节。 2. MAC地址:源MAC地址(Source MAC Address)和目的MAC地址(Destination MAC Address),各6个字节,共计12个字节。这两个字段用于标识网络中的设备。 3. 类型/长度字段(Type/Length):用于指示数据的类型或帧长,2个字节。 4. 数据(Data):此字段中存储实际传输的数据信息,长度可变。 5. CRC校验码(CRC32):用于检测传输中的错误,4个字节。 总字节数为:7 + 12 + 2 + 数据长度 + 4。 在以太网中,帧的总长度为46至1500字节。如果数据字段长度小于46字节,则数据字段将被填充以达到最小长度要求,填充部分称为填充(Pad)。 需要注意的是,MAC帧格式在不同的网络类型中可能会存在差异,例如以太网、令牌环网等,但基本上都包含了上述字段,只是字段的大小和顺序有所不同。此外,有些网络还可能在MAC帧中添加其他的字段来实现特定的功能,如帧长字段、FCS字段等。 ### 回答3: MAC (Media Access Control) 帧格式指的是数据链路层中控制帧的格式。在以太网中,MAC帧是数据链路层上进行数据传输的基本单位。以下是描述以太网中标准的MAC帧格式。 1. 前导码字段 (Preamble field):7个字节的前导码用于同步接收器和发送器的时钟,标识帧的开始。 2. 起始帧定界符字段 (Start of Frame delimiter field):一个字节的起始帧定界符,指示下一个字段为帧头。 3. 目的地址 (Destination address):6个字节的目的地址,指示帧应送往的目标设备。 4. 源地址 (Source address):6个字节的源地址,指示发送帧的设备。 5. 长度/类型字段 (Length/Type field):在此字段中,2个字节表示帧中上层协议的类型或帧的长度。 6. 数据字段 (Data field):46 - 1500字节的数据载荷,用于传递上层协议的信息。 7. 帧检验序列字段 (Frame Check Sequence field,也称为FCS字段):4个字节的FCS值,用于检测帧中的错误。 MAC 帧的总大小为64 - 1526个字节。其中,前导码字段为7个字节,起始帧定界符字段为1个字节,目的地址和源地址字段各为6个字节,长度/类型字段为2个字节,数据字段为46 - 1500字节,帧检验序列字段为4个字节。 需要注意的是,这是以太网中标准的MAC帧格式,不同的物理介质可能会有一些差异。此外,还有一些扩展帧格式如802.1Q VLAN和802.3ad Link Aggregation等,它们在标准的MAC帧格式上加入了额外的字段来支持特定的功能。以上是标准的MAC帧格式。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值