UVA594 One Little, Two Little, Three Little Endians
题目描述
## 题目背景
计算机在内存中存储整数时,一般按字节为逻辑单位进行存储,有“小端序”和“大端序”之分。
小端序(little-endian)是指将表示整数的低位字节存储在内存地址的低位,高位字节存储在内存地址的高位。
而使用大端序(big-endian)方式存储时,存储顺序正好相反。
对于一个存储在小(大)端机上的整数,该整数在大(小)端机上会被系统识别为哪个整数?
输入格式
输入文件共若干行,每行一个整数 $x$。
输出格式
对于每个输入的整数 $x$,在输出文件中打印一行。
该行包含输入的整数 $x$,后跟“ converts to ”(不含引号),后跟转换后的整数。
说明/提示
【样例解释】
$123456789_{10}=([00000111][01011011][11001101][00010101])_2$。
使用小端机存储时,如果内存存储起始地址为 $0x520$,则从低位地址到高位地址存储的内容依次为
$[00010101]_{0x520}[11001101]_{0x521}[01011011]_{0x522}[00000111]_{0x523}$,
而这段内存在大端机中将被识别为
$([00010101][11001101][01011011][00000111])_2=365779719_{10}$。
对于 $100\%$ 的测试点,有 $-2147483648 \leq x \leq 2147483647$。