① 详解大端模式和小端模式
字节顺序 ,又称 端序 或 尾序 (英语: Endianness )。在友晌计算机科学计算机科学")领域中,是跨越多字节的程序对象的存储规则。
在几乎所有的机器上,多字节对象都被存储为连续的字节序列。例如在C语言中,一个类型为 int 的变量 x 地址为 0x100 ,那么其对应地址表达式 &x 的值为 0x100 。且 x 的四个字节将被存储在存储器的 0x100, 0x101, 0x102, 0x103 位置。
在计算机中一般讲字节序分为两类: Big-Endian (大端字节序) 和 Little-Endian 。好搜锋
a) Little-Endian 高位字节在前,低位字节在后。
b) Big-Endian 低位字节在前,高位字节在后。
c) 网络字节序:TCP/IP各层协议将字节序定义为Big-Endian,因此TCP/IP协议中使用的字节序通常称之为网络字节序。
举个小例子:
整数127(十进制)在计算机(64位)中大/小端字节序
在x86的计算机中,一般漏拍采用的是小端字节序
输出
② python怎么中文写txt文件
本文以txt 文本为例,只是介绍ANSI,Unicode,UTF-8 三种编码的文件的读写过程,对于编码不做深究了
一、用记事本另存为时,可以选择保存文本使用的的几种编码模式,分别为:
ANSI:默认保存的编码格式,采用本地操作系统默认的内码,简体中文一般为GB2312。
Unicode:UTF-16的小端字节序,加上BOM签名:0xFFFE。
Unicode bigendian:Unicode编码:UTF-16的大端字节序,加上BOM签名:0xFEFF。
UTF-8:编码格式是:UTF-8,其BOM为0xEF BB BF(UTF-8不区分字节序,这个BOM仅标志UTF-8编码)
Python对于读取的txt文件,最好在读取的时候进行decode成unicode编码,
然后再写入的时候进行encode成对应想要的编码类型,这样可以保证源文件的编码方式不会改变,且中文不会乱码
整个代码过程保持使用unicode编码方式利用try…except 来进行编码判别具体使用了那种编码方式
二、对于raw_input 通过键盘输入的文字,通过sys模块中的stdin.encodeing来进行解码
暂时这么多