字节、字、bit、byte的关系

本文详细解释了计算机中数据单位的基本概念,包括bit、byte、bps和Bps的区别,以及它们在不同场景下的应用,例如USB2.0传输速率的正确理解。

转自:http://blog.youkuaiyun.com/wanlixingzhe/article/details/7107923/

字 word 
字节 byte 
位 bit 
字长是指字的长度

1字=2字节(1 word = 2 byte) 
1字节=8位(1 byte = 8bit) 
 
一个字的字长为16 
一个字节的字长是8

bps 是 bits per second 的简称。一般数据机及网络通讯的传输速率都是以「bps」为单位。如56Kbps、100.0Mbps 等等。 
Bps即是Byte per second 的简称。而电脑一般都以Bps 显示速度,如1Mbps 大约等同 128 KBps。 
bit 电脑记忆体中最小的单位,在二进位电脑系统中,每一bit 可以代表0 或 1 的数位讯号。 
Byte一个Byte由8 bits 所组成,可代表一个字元(A~Z)、数字(0~9)、或符号(,.?!%&+-*/),是记忆体储存资料的基本单位,至於每个中文字则须要两Bytes。当记忆体容量过大时,位元组这个单位就不够用,因此就有千位元组的单位KB出现,以下乃个记忆体计算单位之间的相关性:

1 Byte = 8 Bits

1 KB = 1024 Bytes

1 MB = 1024 KB

1 GB = 1024 MB

usb2.0标准接口传输速率。许多人都将“480mbps”误解为480兆/秒。其实,这是错误的,事实上“480mbps”应为“480兆比特/秒”或“480兆位/秒”,它等于“60兆字节/秒”,大家看到差距了吧。

这要从bit和byte说起:bit和byte同译为"比特",都是数据量度单位,bit=“比特”或“位”。 
byte=字节即1byte=8bits,两者换算是1:8的关系。 
mbps=mega bits per second(兆位/秒)是速率单位,所以正确的说法应该是说usb2.0的传输速度是480兆位/秒,即480mbps。 
mb=mega bytes(兆比、兆字节)是量单位,1mb/s(兆字节/秒)=8mbps(兆位/秒)。

我们所说的硬盘容量是40gb、80gb、100gb,这里的b指是的byte也就是“字节”。 
1 kb = 1024 bytes =2^10 bytes 
1 mb = 1024 kb = 2^20 bytes 
1 gb = 1024 mb = 2^30 bytes

比如以前所谓的56kb的modem换算过来56kbps除以8也就是7kbyte,所以真正从网上下载文件存在硬盘上的速度也就是每秒7kbyte。 
也就是说与传输速度有关的b一般指的是bit。 
与容量有关的b一般指的是byte。

最后再说一点: usb2.0 480mbps=60mb/s的传输速率还只是理论值,它还要受到系统环境的制约(cpu、硬盘和内存等),其实际读、取写入硬盘的速度约在11~16mb/s。但这也比usb1.1的12mbps(1.5m/s)快了近10倍。

在计算机和通信系统中,**字节Byte)和位(bit)是基本的存储和传输单位**。它们之间的关系非常基础,但非常重要,特别是在处理底层协议(如 CAN、I2C、SPI、网络协议等)时。 --- ## ✅ 一、基本定义 ### 🔹 1. 位(bit) - **bit** 是信息的最小单位,表示一个二进制位(0 或 1)。 - 是数系统中最基本的数据单位。 ### 🔹 2. 字节Byte) - **Byte** 是由 **8 个 bit** 组成的基本单位。 - 通常用于表示一个符(如 ASCII 符)或一个基本的数据单位。 --- ## ✅ 二、基本关系 | 单位 | 含义 | 换算关系 | |------|------|-----------| | 1 bit | 1 位二进制数 | 1 bit | | 1 Byte | 1 字节 | 8 bit | | 1 KB(千字节) | 1024 字节 | 1024 × 8 = 8192 bit | | 1 MB(兆字节) | 1024 KB | 1024 × 1024 × 8 bit | | 1 GB(吉字节) | 1024 MB | 1024 × 1024 × 1024 × 8 bit | --- ## ✅ 三、在 CAN 通信中的体现 ### 🔹 1. 一帧 CAN 数据长度是 8 字节(标准 CAN) - 每帧最多传输 8 字节数据。 - 转换为 bit:8 字节 × 8 = **64 bit** ### 🔹 2. CAN 总线传输速率单位是 bit/s(bps) - 例如:CAN 波特率为 500 kbps,表示每秒传输 **500,000 bit** - 那么每帧传输时间为:64 bit ÷ 500,000 bit/s = **128 μs** --- ## ✅ 四、常见单位换算代码示例(C语言) ```c #include <stdio.h> int main() { unsigned long bits, bytes; printf("请输入 bit 数量: "); scanf("%lu", &bits); bytes = bits / 8; printf("%lu bit = %lu Byte\n", bits, bytes); printf("请输入 Byte 数量: "); scanf("%lu", &bytes); bits = bytes * 8; printf("%lu Byte = %lu bit\n", bytes, bits); return 0; } ``` --- ## ✅ 五、总结 | 项目 | 内容 | |------|------| | 1 Byte | = 8 bit | | bit 是最小单位 | 只能是 0 或 1 | | Byte 是常用单位 | 用于表示符、字节数据等 | | 在 CAN 中 | 一帧数据最多 8 Byte(64 bit) | | 在通信速率中 | 用 bit/s 表示速度(如 500 kbps) | --- ###
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值