计算机的基础数据类型
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
计算机的基础数据类型
⼀、类型
英⽂表达是Type或者Pattern指包含由各特殊的事物或现象抽出来的共通点的抽象概念。
是逻辑演算中关于主⽬的不可兼的分类谱系之⼀。
具有共同特征的事物所形成的种类。
它和类别的差异是:类型强调共同性,类别强调差异性。
⼴义的类型⼀般被定义为⼀种约束,也就是⼀种逻辑公式。
类型被认为是⼀系列满⾜确定约束条件的元素,更抽象的⽅式可以把⼀个类型当作规定⼀个约束条件,如果我们规定的约束条件越好,相对应的被定义元素的集合就越精密,所以逻辑公式(logical formulas)就成为描述类型特征的最合适⼯具。
对任何事物进⾏分类,在特定环境下,应该只有⼀种标准,也就是约束条件要清晰明朗且要少。
⼆、数据类型
在我们⼤致明⽩了什么是数据,那么数据类型就是对数据分类,根据我们今天谈的主题,按照⼀个标准,就是是否计算机处理的数据,我们可以分为计算机处理的数据和⾮计算机处理的数据两种类型。
三、计算机⾥的基础数据类型
就是对计算机系统存储和处理的数据根据计算机的存储特性来进⾏分类,在计算机的世界⾥,数据类型就是在数据结构中的定义是⼀组性质相同的值的集合以及定义在这个值集合上的⼀组操作的总称。
计算机⾥的数据有哪些特性呢:⾸先是数据是⽤⼆进制保存,其次是有长度限制,然后才是加上语义上的信息,那么根据这些特征来进⾏分类,计算机⾥的基础数据类型包括:字节、字、双字、布尔值、数值、字符等。
3.1、纯⼆进制数据类型
字节(byte)
对就是⽤⼆进制的的单位Byte作为了数据类型的名称,表⽰⼀个长度为8bit的⼆进制数据,范围0x00---0xFF,具体语义要根据使⽤场景来确定。
字(word)
也是⽤⼆进制的的单位word作为了数据类型的名称,表⽰⼀个长度为16bit的⼆进制数据,范围0x0000---0xFFFF,具体语义要根据使⽤场景来确定。
双字(dword)
也是⽤⼆进制的的单位dword作为了数据类型的名称,表⽰⼀个长度为32bit的⼆进制数据,范围0x00000000---0xFFFFFFFF,具体语义要根据使⽤场景来确定。
布尔值(bool)
占⽤8bit,表达逻辑上的真和假,取值范围(0,1)
这些数据类型通常没有明确的语义,需要在具体的使⽤场景才有具体的语义,⽐如我们在Windows系统⾥编程时,经常⽤到的⼀些标识数据,每⼀个位代表的意思不⼀样。
3.2、编码数据类型
除了上⾯的纯⼆进制数据类型外,还有⼀些基础数据类型是需要⼈为编码后,才能被计算机识别和处理的数据,⽐如数值和字符⽂本。
这类数据在任何情况下它们的语义都是清晰明了唯⼀的。
3.2.1、数值型
对应了实数⾥的所有的类型:整数,有理数、⽆理数。
在计算机⾥,数值根据计算机系统特征分了很多类型。
整数包括了:整形、长整形、短整形,实数包括了:单精度浮点型和双精度浮点型。
整数:不包含⼩数部分的数值型数据,⽤字母I表⽰。
整型数据只⽤来表⽰整数,以⼆进制形式存储。
整形
长度是32bit,有符号的表⽰范围-2147483648~2147483648,⽆符号表⽰的范围0~4294967295
长整形
跟整形⼀样,只是长度是整形2倍,是64bit ,表⽰的整数范围⼤很多,有符号的表⽰范围-9223372036854775808 ~
9223372036854775807,⽆符号表⽰的范围0~1844674407370955161
短整形
跟整形⼀样,只是长度是整形0.5倍,是16bit ,表⽰的整数范围⼩很多,有符号的表⽰范围-32768~32767,⽆符号表⽰的范围0~65535
实数:在计算机系统的发展过程中,曾经提出过多种⽅法表⽰实数,但是到⽬前为⽌使⽤最⼴泛的是浮点表⽰法。
相对于定点数⽽⾔,浮点数利⽤指数使⼩数点的位置可以根据需要⽽上下浮动,从⽽可以灵活地表达更⼤范围的实数。
单精度浮点数
单精度浮点型专指占⽤32位存储空间的单精度(single-precision )值。
单精度在⼀些处理器上⽐双精度更快⽽且只占⽤双精度⼀半的空间,但是当值很⼤或很⼩的时候,它将变得不精确。
当你需要⼩数部分并且对精度的要求不⾼时,单精度浮点型的变量是有⽤的。
其数值范围为-3.4E38~3.4E38
双精度浮点数
占⽤64位的存储空间。
在⼀些现代的被优化⽤来进⾏⾼速数学计算的处理器上双精度型实际上⽐单精度的快。
所有超出⼈类经验的数学函数,如sin( ),cos( ) ,tan()和sqrt( )均返回双精度的值。
当你需要保持多次反复迭代的计算的精确性时,或在操作值很⼤的数字时,双精度型是最好的选择。
其可以表⽰的数字的绝对值范围⼤约是:1.7E-308~1.7E+308
3.2.2、字符(char)
字符指类字形单位或符号,包括字母、数字、运算符号、标点符号和其他符号,以及⼀些功能性符号。
字符是电⼦计算机或⽆线电通信中字母、数字、符号的统称,其是数据结构中最⼩的数据存取单位,是计算机中经常⽤到的⼆进制编码形式,也是计算机中最常⽤到的信息形式。
不同国家、民族和地区都有⾃⼰的符号系统,计算机系统要想表达这些符号,就必须对这些符号进⾏⼆进制的编码。
根据符号编码的不同,字符的长度就不同。
计算机常⽤的就是ASCII码,主要⽤来表⽰英⽂世界的常见符号,⼀个字符占⽤8bit长度,⽽中⽂字符常⽤编码是GBK,⼀个中⽂字符占⽤16bit。
总之,在计算机系统⾥,通过对这些基本数据的使⽤、组合可以表达对整个宇宙的描述和模拟,构成了现在丰富的计算机世界。
对程序员来讲,要善于使⽤不同的编程语⾔和数据结构来使⽤和组合这些基础数据类型,完成我们构建世界的使命。