c++ 内存二进制表示
程序员文章站
2023-12-27 10:33:39
int a=1 string b="1" 1.其中变量a在内存中的二进制是 0000 0001 2.那么变量b是一个字符串,ascii码是49(字符串1的ascii码是49)通过计算49转换为二进制是 0011 0001 ,所以变量b在内存中表示为 0011 0001 同理,string c="12 ......
int a=1
string b="1"
1.其中变量a在内存中的二进制是 0000 0001
2.那么变量b是一个字符串,ascii码是49(字符串1的ascii码是49)通过计算49转换为二进制是 0011 0001 ,所以变量b在内存中表示为 0011 0001
同理,string c="123",那么表示的二进制为 0011 0001 0011 0010 0011 0011
以下补充
1.进制
- 1byte = 8 bit
- 1kb = 1024byte = 210byte
- 1mb = 1024kb = 220byte
- 1gb = 1024mb = 230byte
- 1tb = 1024gb = 240byte
- 1pb = 1024tb = 250byte
- 1eb = 1024pb = 260byte
2.进制转换 (十进制转二进制)
方法是用十进制的数字连续除以2,所得的商继续除以2,依此类推,直到商为0时停止,然后把所有余数倒序输出就是二进制。