cyfile / Matlab-base-toolbox

本人使用Matlab基础工具箱所编写的各种代码
1 stars 0 forks source link

little-endian and big-endian #5

Open 213cy opened 8 years ago

213cy commented 8 years ago

位 b(bit) 1个二进制数 只有0或1两种 字节 B(Byte) 8个二进制数构成,可以由两位十六进制数表示. 它是存储空间的基本计量单位(可以被计算机寻址的最小单位)。 如 01010101B(最后一个B表示二进制数) 0x99 0xff 99H ffH

100D(D可以用来标示十进制数)

1个字节(B)可以储存1个英文字母 dec2hex(double('A')) 2个字节叫一个字(WORD),可以存储1个汉字,dec2hex(double('一')) 4个字节叫一个双字(DWORD) 8个字节叫一个四字(QWORD)可以存储64位双精度浮点数.num2hex(rand)

当我们从内存向处理器的寄存器读入数据时,这个数据可能占用几个连续的字节. 如果把 低地址里的字节放到寄存器的低位 则是 little-endian 小端存储(intel PC) 如果把 低地址里的字节放到寄存器的高位 则是 big-endian 大端存储

存储器的地址指针通常 由小到大 即 由低到高 移动 寄存器的数据按由高位到低位 自左向右 排列

typecast(flip(uint8(hex2dec(['80'; '00'; '00'; '00'; '00'; '00'; '00'; '01']))),'double') hex2num('8000000000000001') -eps(0)

1B=8b

1kB=1000B 1KB=1024B

1mB=1000kB 1MB=1204KB