文章目录
1.基本概念 1.比特(bit): 2. **字节**(Byte): 2. **数据类型**:
2. 相互转化
1.基本概念
1.比特(bit):
计算机中最小的数据存储单位,用 0 和 1 表示。 信息传输速度通常以比特每秒(bps)为单位来衡量
2. 字节 (Byte):
字节 (Byte) 存储数据的基本单位,用于存储一个字符,如字母或者数字。1 Byte = 8bit表示范围 :0 到 255(无符号数,2的8次-1),或者 -128 到 127(如果是有符号字节,对于 8 位的有符号数,最大的正数是 01111111(127),最小的负数是 10000000(-128)。多字节表示 :例如 2 字节形式(16 位)、4 字节形式(32 位)和 8 字节形式(64 位)。存储单位 :多个字节通常组成更大的存储单位,如千字节(KB,1024 字节)、兆字节(MB,1024 KB)、吉字节(GB,1024 MB)等。
2. 数据类型 :
FP32(单精度浮点数):通常占用 4 个字节(32 位)的内存空间。在 IEEE 754 标准中,单精度浮点数由 1位符号位、8位指数位和 23 位尾数位组成。 int32(32 位有符号整数):通常也占用 4 个字节的内存空间。它可以表示从 -2,147,483,648 到2,147,483,647 的整数值。 int8(8 位有符号整数):占用 1 个字节的内存空间。它可以表示从 -128 到 127 的整数值。 bool(布尔值):通常占用 1 个字节的内存空间,用来表示逻辑真或假。
import torch
print ( torch. finfo( torch. float32) )
print ( torch. finfo( torch. float16) )
print ( torch. iinfo( torch. int32) )
print ( torch. iinfo( torch. int16) )
print ( torch. iinfo( torch. int8) )
2. 相互转化
import torch
fp32_tensor = torch. tensor( [ 1.5 , 2.5 , 3.5 ] )
print ( "FP32 Tensor:" )
print ( fp32_tensor)
int32_tensor = fp32_tensor. to( torch. int32)
print ( "\nInt32 Tensor:" )
print ( int32_tensor)
int8_tensor = int32_tensor. to( torch. int8)
print ( "\nInt8 Tensor:" )
print ( int8_tensor)