- 外文名
- Byte
- 定 义
- 相当于一个字符,8位=1字节
- 类 型
- 数字信息的单位
- 中文名
- 字节
- 学 科
- 计算机
- 简 写
- B
-
字节、字、bit、byte的关系
2011-12-28 10:02:53字节 byte 位 bit,来自英文bit,音译为“比特”,表示二进制位。 字长是指字的长度 1字=2字节(1 word = 2 byte) 1字节=8位(1 byte = 8bit) 一个字的字长为16 一个字节的字长是8 bps 是 bits per second 的简称。...字 word
字节 byte
位 bit,来自英文bit,音译为“比特”,表示二进制位。
字长是指字的长度1字=2字节(1 word = 2 byte)
1字节=8位(1 byte = 8bit)
一个字的字长为16
一个字节的字长是8bps 是 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倍。
扩展阅读
字节的来由
最开始计算机只是处理数据运算,也就是0-9,加上运算符号,4bit足够了。举个例子(实际不是这样):用0000表示0,0001表示1,0010表示2,依次类推。
后来加入了字母,程序符号等,8bit也足够了,而这时诞生了ASCII编码的标准,大家就说把8bit表示出来的值叫做字节(byte)吧,于是就有了字节这个单位。
所以1byte等于8bit是计算机发展中的一个约定出来的规则。汉字:
1 汉字 = 2 byte = 16 bit (这里不是很准确,当编码不同的时候,1个汉字所占的字节数也会有所不同,有些编码是占 2个字节,有些则不是,可能是 3个或者 4个)
Java的八大基本数据类型
字节 内存 取值范围 数据类型 基本数据类型
、
内置类型
整数类型 byte(字节型) 1 8位 -128~127
(-2^7 ~2^7 -1)
short(短整型) 2 16位 -32768~32767
(-2^15~2^15-1)
int(整型) 4 32位 -2147483648~2147483647
(-2^31~2^31-1)
long(长整型) 8 64位 -9223372036854774808~9223372036854774807
(-2^63~2^63-1)
浮点类型 float(单精度型) 4 double(双精度类型) 8 字符类型
char 1 布尔类型 boolean 1 引用类型 -
简化 java.lang.Byte 类的源码
2020-09-28 03:00:07public final class Byte extends Number implements Comparable<Byte> { @java.io.Serial private static final long serialVersionUID = -7183698231559129828L; public static final byte MIN_VALUE = -...Byte类型的缓存值和
Short、Integer、Long
一样都是-128 ~ 127
public final class Byte extends Number implements Comparable<Byte> { @java.io.Serial private static final long serialVersionUID = -7183698231559129828L; public static final byte MIN_VALUE = -128; // 缓存最小值 public static final byte MAX_VALUE = 127; // 缓存最大值 public static final int SIZE = 8; // 一个byte占8位 public static final int BYTES = SIZE / Byte.SIZE; // 占8/8=1个字节 private final byte value; // 存储数据的成员变量 @SuppressWarnings("unchecked") public static final Class<Byte> TYPE = (Class<Byte>) Class.getPrimitiveClass("byte"); /** * -128到127的值会被缓存 */ private static class ByteCache { private ByteCache() {} static final Byte[] cache; static Byte[] archivedCache; static { final int size = -(-128) + 127 + 1;// 总共256 VM.initializeFromArchive(ByteCache.class); if (archivedCache == null || archivedCache.length != size) { Byte[] c = new Byte[size]; byte value = (byte)-128; for(int i = 0; i < size; i++) { c[i] = new Byte(value++); // 将-128到127的值存入数组中 } archivedCache = c; } cache = archivedCache; } } /** * 构造方法 */ @Deprecated(since="9") public Byte(byte value) {} @Deprecated(since="9") public Byte(String s) throws NumberFormatException {} // 传入10进制的字符串s进行转换 /** * byte转其它类型数据 */ @HotSpotIntrinsicCandidate public byte byteValue() {} // 返回byte值 public short shortValue() {} // 返回short类型的值 public int intValue() {} // 返回int类型的值 public float floatValue() {} // 返回float类型的值 public long longValue() {} // 返回long类型的值 public double doubleValue() {} // 返回double类型的值 public boolean equals(Object obj) {} // 判断当前值和obj是否相等 public int compareTo(Byte anotherByte) {} // 比较当前值和anotherByte的大小 public String toString() {} // 将当前值转换成字符串 public int hashCode() {} // 当前值的hash值 /** * 静态方法 */ @HotSpotIntrinsicCandidate public static Byte valueOf(byte b) {} // 将b封装为Byte public static int hashCode(byte value) {} // value的hash值 public static String toString(byte b) {} // 转换为字符串 public static int compare(byte x, byte y) {} // 比较x,y的大小 public static int compareUnsigned(byte x, byte y) {} // 比较无符号x,y的大小 public static int toUnsignedInt(byte x) {} // 转换为无符号int值 public static long toUnsignedLong(byte x) {} // 转换为无符号long值 public static byte parseByte(String s) throws NumberFormatException {} // 按默认10进制解析字符串s为byte数据 public static byte parseByte(String s, int radix) throws NumberFormatException{}// 按照radix进制,解析字符串s public static Byte valueOf(String s, int radix) throws NumberFormatException {} // 将字符串按照radix进制转换并返回 public static Byte valueOf(String s) throws NumberFormatException {} // 将字符串按照10进制转换并返回 public static Byte decode(String nm) throws NumberFormatException {} // 将nm字符串进行解码并返回转换后的值 }
-
byte Byte
2019-06-06 14:00:04java的基本数据类型中有byte这种,byte存储整型数据,占据1个字节(8 bits),能够存储的数据范围是-128~+127。 Byte是java.lang中的一个类,目的是为基本数据类型byte进行封装。封装有几种好处,比如:1. Byte可以将...java的基本数据类型中有byte这种,byte存储整型数据,占据1个字节(8 bits),能够存储的数据范围是-128~+127。
Byte是java.lang中的一个类,目的是为基本数据类型byte进行封装。封装有几种好处。比如:1. Byte可以将对象的引用传递,使得多个function共同操作一个byte类型的数据,而byte基本数据类型是赋值之后要在stack(栈区域)进行存储的;2. 定义了和String之间互相转化的方法。Byte的大小是8个字节。因为Byte是需要通过关键字new来申请对象,而此部分申请出来的对象放在内存的heap(堆区域)。
-
'utf-8' codec can't decode byte 0xff in position 0: invalid start byte
2017-09-15 14:09:48‘utf-8’ codec can’t decode byte 0xff in position 0: invalid start byte觉得有用的话,欢迎一起讨论相互学习~Follow Me今天使用语句image_raw_data_jpg = tf.gfile.FastGFile('../test_images/test_1.jpg', 'r'...‘utf-8’ codec can’t decode byte 0xff in position 0: invalid start byte
觉得有用的话,欢迎一起讨论相互学习~
今天使用语句
image_raw_data_jpg = tf.gfile.FastGFile('../test_images/test_1.jpg', 'r').read()
读取图片文件的时候遇到了以下问题:
'utf-8' codec can't decode byte 0xff in position 0: invalid start byte
原因:
0x92 即 10010010,UTF8 中编码一个字符的第一个字节(start byte)只可能是 0xxxxxxx、110xxxxx、1110xxx、11110xxx……而后面的字节只可能是 10xxxxxx。也就是说 0x92 只能作为后面的字节,却出现在了第一个字节的位置。
出现这种问题绝大部分情况是因为文件不是 UTF8 编码的(例如,可能是 GBK 编码的),而系统默认采用 UTF8 解码。解决方法是改为对应的解码方式。
极少数情况是因为文件损坏了或者和一部分非 UTF8 编码混在一起,可以修复文件或采用 replace 等方式解码。
解决方案
将’r’改为’rb’的形式,即:
image_raw_data_jpg = tf.gfile.FastGFile('../test_images/test_1.jpg', 'rb').read()
参考文献:
https://segmentfault.com/q/1010000004268196
-
Byte和byte区别详解
2019-02-24 10:29:23写程序时,误把byte写作Byte,调试了许久,便将二者的区别及用法详细理解一遍 1:byte和Byte详解 byte是java的基本数据类型,存储整型数据,占据1个字节(8 bits),能够存储的数据范围是-128~+127。 Byte是java.... -
python int 转byte,byte转int
2019-07-24 09:02:20data_byte1 = int(1324).to_bytes(length=2, byteorder='big', signed=True) #int(参数):参数代表要被转换的数字 #length=2:代表要转换成几个字节 #byteorder='big'代表高位在前,相反little data_byte2 = int()... -
byte类型怎么转成byte数组
2020-01-10 09:54:06有一个String ``` String e = "aa"; ...byte[] a = new byte[] { 0x01, (byte) 0xFF, 0x0A, 0x00, (byte) 0xAA, 0x13,}; ``` 现在要把byte f 和byte[] a进行拼接 怎么讲byte f转成byte 数组! -
char与byte的区别
2012-07-21 16:18:02很多初学者(包括我,已经学了一年多java了)肯会对char和byte这两种数据类型有所疑惑,相互混淆,今天特地查了好多资料,对byte和char两种数据类型进行了总结和比较,先将结果与大家分享: byte 是字节数据类型... -
byte的包装类Byte
2018-12-10 22:30:11byte占用一个字节的内存,整形默认为int型 1.构造函数 new Byte(byte value) 新建一个Byte对象,该对象表示指定的byte值 new Byte(String s)(s的范围为-128到127)创建一个Byte对象,该对象表示指定的byte值... -
python byte 和 list互转(byte to list,list to byte,byte to int) buffer
2020-04-26 20:27:19在一些图像处理中,一个像素用8位,即一个byte。 如何用byte和int,应该是number互转。 byte to list:list(bytes(buffer)) list to byte: arr=[1,2,3,4,5] arr2= bytes(arr) ... -
Android —— byte字符串转byte值, byte值转byte字符串
2018-08-15 15:38:14byte字符串转byte值: public byte[] StringToByteArray(String str) { String[] str_ary = str.split(" "); int n = str_ary.length; byte[] bt_ary = new byte[n]; for ... -
byte[]转String及String转byte[]使用utf-8格式
2018-09-12 15:31:44一、byte[]转String public T fromBytes(byte[] bytes) { String str = new String(bytes, StandardCharsets.UTF_8); } 二、String转byte[] String str = "string"; str.getBy... -
成功解决UnicodeDecodeError: 'utf-8' codec can't decode byte 0xbc in position 2: invalid start byte
2019-01-14 20:08:55成功解决UnicodeDecodeError: 'utf-8' codec can't decode byte 0xbc in position 2: invalid start byte 目录 解决问题 解决思路 解决方法 解决问题 UnicodeDecodeError: 'utf-8' codec can't ... -
java 中List<Byte> 转 byte[]
2013-11-29 15:16:16最近做socket开发就难免需要对byte[]操作,为了更方便存取byte需要使用List,但是转换起来很麻烦,byte[] 转 List<Byte>比相对简单,List<Byte>转byte[]就比较麻烦.下面三种方法供参考. 1.使用for循环,如: ... -
Python3解决UnicodeDecodeError: 'utf-8' codec can't decode byte..问题 终极解决方案
2017-10-06 13:19:420x00 问题引出: 最近在做一个买房自动化分析Python脚本,需要爬取网页。 在使用urllib获取reqest的response的时候,还要进行编码转换。...UnicodeDecodeError: 'utf-8' codec can't decode byte 0x -
python 报错"UnicodeDecodeError: 'utf-8' codec can't decode byte"的解决办法
2018-09-01 16:44:25最近写了一个Python小程序,用来统计...UnicodeDecodeError: ‘utf-8’ codec can’t decode byte 0xa1 in position 0: invalid start byte 后来经过不断查找终于找到了解决办法。 由于我在程序中设定文件打开的... -
成功解决Python3版UnicodeDecodeError: 'ascii' codec can't decode byte 0x90 in position 614: ordinal ...
2018-01-11 23:37:11成功解决Python3版UnicodeDecodeError: 'ascii' codec can't decode byte 0x90 in position 614: ordinal not in 目录 解决问题 解决过程 解决方法 解决问题 UnicodeDecodeError: 'ascii' codec can't ... -
int与byte、byte[]相互转换
2019-08-30 16:55:31一、int to byte 范围在 -128 ~ 127之间可以直接转换,超出这个范围就乱了。 int i = 127; byte b = (byte) i; Integer i = 127; i.byteValue(); 二、byte to int // byte to int (int仍有正负) static int byte... -
ByteTCC
2018-05-01 22:54:54https://gitee.com/blameswood/ByteTCC/开源分布式 事务 中间件 -
java Object转byte与byte转Object
2019-11-30 22:29:28今天实现一下如何从Object去转为byte和如何从byte转为Object。 首先,定义一个类student: package com.byteToObject; import java.io.Serializable; public class student implements Serializable{ private... -
python byte转str,str转byte
2019-04-16 00:14:52python byte 转 str , str 转 byte 其实很简单: 原理图如下: 案例: a: str = "你好!" b: bytes = a.encode('gbk') print(b) c: str = b.decode('gbk') print(c) 输出结果: b'\xc4\xe3\xba\xc3\xa3\... -
#面试 --byte c = (byte) -129;和byte d = (byte) 128;会输出什么?
2018-09-17 23:14:40如果我们写成byte c = -129;会发生编译检察错误,无法进行编译,所以必须要强转: byte c = (byte) -129; System.out.println(c); byte d = (byte) 128; System.out.println(d); /**output: 127 -128 */ ... -
java int转byte出现负数 byte转int的解决
2017-05-29 11:11:291.java中 byte转int (特别注意) byte b=0x01; int a=0xff&b; //正确 2. java中 int转byte int a=0x01; byte b=(byte)(a); 原因:java中byte是8位 -128~127之间,而int是32bit,在转化前需将高... -
iOS byte byte数组的相关操作
2016-08-02 14:27:171 截取byte[]中一部分数据,从begin 开始,长度是 count - (void)bytesplit2byte:(Byte[])src orc:(Byte[])orc begin:(NSInteger)begin count:(NSInteger)count{ memset(orc, 0, sizeof(char)*... -
Byte[]和byte[]的转换
2017-10-26 11:29:33byte[] toPrimitives(Byte[] oBytes) { byte[] bytes = new byte[oBytes.length]; for(int i = 0; i ; i++) { bytes[i] = oBytes[i]; } return bytes; }// byte[] to Byte[] By -
c#byte操作
2019-05-08 15:04:34byte拼接 List<byte> byteScource = new List<byte>(); byte[] IDs = { 1 }; byte[] type = { 4 }; byteScource.AddRange(IDs); byteScourc... -
java byte数组打印
2017-08-22 11:41:55Byte[] bs = {0x0F, 0x1F, 0x2F, 0x3F, 0x4F, 0x5F, 0x6F}; System.out.println(Arrays.toString(bs)); 打印输出结果 [15, 31, 47, 63, 79, 95, 111] 更加通用一点的方式 byte[] bs = hexStringToByteArray("... -
Python读取文件UnicodeDecodeError: 'utf-8' codec can't decode byte 0xbc in position 2: invalid start ...
2018-01-16 09:56:27Python读取文件报错:UnicodeDecodeError: 'utf-8' codec can't decode byte 0xbc in position 2: invalid start byte 后来百度找到答案: 中文字符的Unicode编码0x0800-0xFFFF之间,(utf-8包含了部分汉字)... -
C#byte类型
2019-02-19 22:50:25byte类型的范围是0~255 转换为二进制是00000000~11111111 ---------------------------------------------------------- C#中对byte类型的处理还是很特殊的。 下面用几行简单的代码来说明问题 byte x=1; byte y=2;... -
Bit、 Byte、KB、MB、GB之间的换算
2018-02-13 12:14:06换算1 Byte = 8 Bits(即 1B=8b)1 KB = 1024 Bytes1 MB = 1024 KB1 GB = 1024 MB基本概念Bit意为“位”或“比特”,是计算机运算的基础,属于二进制的范畴;Byte意为“字节”,是计算机文件大小的基本计算单位;这...
-
stm32f103点亮led
-
【数据分析-随到随学】量化交易策略模型
-
过拟合、欠拟合及其解决方案
-
Cocos Creator游戏开发-连连看 (接入腾讯优量汇广告)
-
mainwindow.cpp
-
clickhouse-common-static-20.9.2.20-2.x86_64.rpm
-
site-1.12-TortoiseSvn1.9.rar
-
vim 配置nginx配置文件高亮
-
基于X210的裸机时钟温度显示器-第3/3季
-
FontAwesome Pro V5.15.1深度精简完整版
-
(新)备战2021软考网络工程师培训学习套餐
-
阿里云云计算ACP考试必备教程
-
JavaEE框架(Maven+SSM)全程实战开发教程(源码+讲义)
-
ps2接口技术及程序参考.pdf
-
C++何时调用拷贝(复制)构造函数
-
ISO_14229_2006
-
python测试代码.zip
-
读取ftp文件工具类
-
D3D9 创建多屏的全屏程序
-
Copley Ethercat-User-Guide.pdf