非数值表示
- 格式:docx
- 大小:138.76 KB
- 文档页数:5
信息系统管理工程师考点分析与真题详解第 1 章计算机科学基础计算机科学是一门包含各种各样与计算和信息处理相关主题的系统学科,从抽象的算法分析、形式化语法,到具体的如编程语言、程序设计、软件和硬件。
作为一门学科,它与数学、计算机程序设计、软件工程和计算机工程有显着的不同,却通常被混淆,尽管这些学科之间存在不同程度的交叉和覆盖。
根据《信息系统管理工程师考试大纲》与历年试题分布,本章重点讲述:数制及转换二进制、十进制和十六进制等常用数制及其相互转换数据的表示数的表示:原码、补码、发码,整数和实数的机内表示方法,精度与溢出非数值表示:字符和汉字的机内表示,声音和图像的机内表示校验方法和校验编码算术运算和逻辑运算计算机中二进制的运算方法逻辑代数基本运算数据结构与算法基本概念历年真题详解与模拟题1.1 数制及转换1.1.1 数制按进位的原则进行计数,称为进位计数制,简称"数制"或"进制".在日常生活中经常要用到数制,通常以十进制进行计数,除了十进制计数以外,还有许多非十进制的计数方法。
例如,60分钟为1小时,用的是60进制计数法;1星期有7天,是7进制计数法;1年有12个月,是12进制计数法。
当然,在生活中还有许多其他各种各样的进制计数法。
在计算机系统中采用二进制,其主要原因是由于电路设计简单、运算简单、工作可靠、逻辑性强。
不论是哪一种数制,其计数和运算都有共同的规律和特点。
人们最熟悉的是十进制数,但在计算机中,采用二进制数"0"和"1"可以很方便的表示机内的数据与信息。
在计算机系统中采用二进制,其主要原因是由于电路设计简单、运算简单、工作可靠、逻辑性强。
不论是哪一种数制,其计数和运算都有共同的规律和特点。
1.十进制数我们熟悉的十进制数有两个主要特点:有十个不同的数字符号:0、1、2、 (9)低位向高位进、借位的规律是"逢十进一"、"借一当十"的计数原则进行计数。
数值型数据和非数值型数据
数值型数据和非数值型数据是数据类型的两种基本分类。
数值型数据是指可以用数字来表示的数据类型,例如年龄、身高、体重、成绩等。
这些数据可以进行数学计算和统计分析,可以使用各种算法进行处理和挖掘,如平均值、方差、回归分析、聚类分析等。
非数值型数据则是指不可以用数字来表示的数据类型,例如颜色、性别、国籍、品牌等。
这些数据无法进行数学计算和统计分析,但是可以使用各种分类算法进行处理和挖掘,如决策树、朴素贝叶斯、支持向量机等。
在实际应用中,数值型数据和非数值型数据往往是相互配合的。
例如,在商品推荐系统中,商品的价格、销量等数值型数据可以用来评估商品的市场表现,而商品的类型、品牌等非数值型数据可以用来进行商品分类和推荐。
因此,在数据分析和挖掘中,需要综合使用数值型数据和非数值型数据,以获得更全面和准确的结果。
- 1 -。
2022年计算机等级三级:编非数值数据的表示计算机除了具有进展数值计算力量之外, 还具有进展非数值计算的力量。
现在, 后者的应用领域已远远超过了前者的应用领域, 如:文字处理、图形图象处理、信息检索、日常的办公治理等。
所以, 对非数值信息的编码就显得越加重要。
1、ASCII码ASCII码(American Standard Code for Information Interchange)是目前应用极其广泛的一种信息编码, 很多计算机系统都是采纳它为字符进展编码。
它是一种7位二进制编码。
右表是ASCII码的详细编码方案。
在该表中, 对学习本课程有用的主要信息有:字符’0’~’9’是连续编码的, 其编码的低4位就是该字符在十进制中的数值;小写字母的编码比大写字母的编码大, 对应字母的编码之间相差20H。
固然, 从ASCII码表中还可看出其它有用信息, 还有扩展的ASCII 码等学问, 但这些内容对学习本课程的帮忙不明显, 故不再表达。
有兴趣的读者可参阅其它书籍。
表1.3 ASCII码的编码方案高位低位 0000010100111001011101110000NULDELSP0@P`p0001SOHDC1!1AQaq0010STXDC2“2BRbr0011ETXDC3#3CScs0100EOTDC4$4DTdt0101ENQNAK%5EUeu0110ACKSYNK[k{1100FFFS 《L\l|1101CRGS-=M]m}1110SORS.》N^n~1111SIUS/?O_oDel2、汉字编码ASCII码是针对英文的字母、数字和其它特别字符进展编码的, 它不能用于对汉字的编码。
要想用计算机来处理汉字, 就必需先对汉字进展适当的编码。
我国在1981年5月对6000多个常用的汉字制定了交换码的国家标准, 即:GB2312-80。
该标准规定了汉字交换用的根本汉字字符和一些图形字符, 它们共计7445个, 其中汉字有6763个。
非数值信息在计算机中的表示--- ASCII码、BCD码、汉字交换码、汉字机内码1、西文字符编码常用的字符编码有EBCDIC码和ASCII码。
IBM系列大型机采用EBCDIC码,微型机采用ASCII码。
(1)ASCII码ASCII码(American Standard Code for Information Interchange)是美国标准信息交换代码的简称。
ASCII码占一个字节,标准ASCII码为7位(最高位为0),扩充ASCII码为8位。
7位二进制数给出了128个编码,表示了128个不同的字符。
其中95个字符可以显示。
包括大小写英文字母、数字、运算符号、标点符号等。
另外的33个字符,是不可显示的,它们是控制码,编码值为0~31和127。
例如A的ASCII码为1000001,十六进制表示为41H。
回车符(CR)的ASCII码为13。
空格 20H'0'~'9' 30H~39H'A'~'Z' 41H~5AH'a'~'z' 61H~7AH2、数字编码:BCD码BCD码用4位二进制数表示一位十进制数。
3、汉字的编码(1)汉字交换码①汉字交换码(国标码): GB2312-80"信息交换用汉字编码字符集-基本集",规定了进行一般汉字信息处理时所用的7445个字符编码。
其中682个非汉字图形字符和6763个汉字代码。
汉字代码中又有一级常用字3755个,二级次常用字3008个。
两个字节存储一个国标码。
②区位码:将国标码放置在一个94行*94列的矩阵中,每一行称为一个"区",用区号表示;每一列称为一个"位",用位号表示,一个汉字的区号和位号合在一起构成"区位码"。
国标码=区位码(十进制)的两个字节分别转换为十六进制后加20H。
(2)汉字的输入码为将汉字输入计算机而编制的代码称为汉字输入码。
非数值数据的表示和数据校验码
非数值数据是指那些不能被表示为数字的数据,例如文字、图像、音频等。
这些数据在计算机中都是以二进制形式存在的,因此需要一种表示方式来将它们转换为计算机能够处理的数据。
一种常用的表示方式是ASCII码,它将每个字符都用一个唯一的8位二进制数表示。
例如,字母A的ASCII码为01000001。
另外,还有许多其他的编码方式,如Unicode等。
当我们在传输非数值数据时,为了保证数据的正确性,需要使用数据校验码来检测是否出现了传输错误。
常用的数据校验码有循环冗余校验码(CRC)、校验和等。
这些校验码可以在传输过程中对数据进行检验,如果发现数据出现错误,就会提示重新传输数据。
总之,非数值数据的表示和数据校验码是保证计算机处理非数值数据正确性的关键技术,它们的应用也越来越广泛。
- 1 -。
非数值型数据类型摘要:一、非数值型数据类型的概念1.数据类型的分类2.非数值型数据类型的定义二、常见的非数值型数据类型1.字符型数据类型a.字符的表示方式b.常见字符型数据类型2.布尔型数据类型a.布尔值的表示b.常见布尔型数据类型3.日期和时间数据类型a.日期和时间的表示方式b.常见日期和时间数据类型4.字符串数据类型a.字符串的表示方式b.常见字符串数据类型三、非数值型数据类型的应用1.字符型数据类型的应用场景2.布尔型数据类型的应用场景3.日期和时间数据类型的应用场景4.字符串数据类型的应用场景正文:非数值型数据类型是计算机程序设计中的一种数据类型,与数值型数据类型相对应。
它们主要用于存储和处理非数字信息,如字符、布尔值、日期和时间以及字符串等。
非数值型数据类型在各种编程语言中都有广泛的应用,如Python、Java、C++等。
字符型数据类型用于存储单个字符,通常用一个字节(8 位)来表示。
在某些编程语言中,字符和整数之间可以相互转换,如ASCII 码。
常见的字符型数据类型包括char、byte、short 等。
布尔型数据类型用于表示真或假,通常用1 表示真(True),0 表示假(False)。
布尔型数据类型在条件判断和逻辑运算中有着广泛的应用。
日期和时间数据类型用于存储日期和时间信息,如年、月、日、时、分、秒等。
日期和时间数据类型可以精确地表示某一时刻,对于许多应用场景(如银行交易、数据分析等)具有重要意义。
常见的日期和时间数据类型包括Date、Time、DateTime 等。
字符串数据类型用于存储一串字符,通常用于表示文本信息。
字符串数据类型在编程中有着广泛的应用,如存储用户输入、文件名、路径等。
常见的字符串数据类型包括String、StringBuilder、StringBuffer 等。
非数值型数据类型在实际应用中有着广泛的应用,它们为程序设计提供了丰富的表达方式,使得程序能够处理更加复杂和多样的数据。
非数值型数据类型
非数值型数据类型是指在计算机科学和编程中用来表示非数值的数据的类型。
数值型数据类型主要是有关数字和数值计算的,而非数值型数据类型则主要涉及到文本、布尔值、日期和时间等数据。
文本类型是最基本的非数值型数据类型之一。
在编程中,文本通常被表示为字符串(string)。
字符串是由字符组成的有序序列,可以包含字母、数字、标点符号和空格等内容。
程序中可以用引号将文本括起来,如"Hello World"就是一个字符串。
布尔型(boolean)是另一种非数值型数据类型。
布尔型只有两个取值,即True和False,通常用来表示真假、对错等概念。
布尔型数据在逻辑运算和条件判断中经常被使用。
日期和时间类型用于表示日期和时间的数据。
在编程中,日期和时间可以作为单独的数据类型存储,也可以作为字符串或数值的一部分进行处理。
日期和时间数据可以用于记录事件发生的时间、计算时间间隔等。
除了上述几种常见的非数值型数据类型,还有一些其他的数据类
型可以用来表示特定的数据。
例如,枚举类型(enum)可以用来表示
一组有限的取值,例如季节(春、夏、秋、冬);数组(array)可以
用来表示一组相同类型的数据;结构体(struct)可以将多个不同的
数据类型组合在一起。
非数值型数据类型的使用范围非常广泛。
在日常生活中,我们经
常需要处理文本、判断真假、记录日期和时间等非数值的信息。
在编
程中,非数值型数据类型是构建复杂数据结构和实现各种功能的基础。
因此,理解和熟练使用非数值型数据类型对于程序员来说是非常重要的。
定义非数值数据
非数值数据指的是不能以数值方式表示的数据,它通常是具有分类或描述性质的数据。
非数值数据可以分为两类:定性数据和定量数据。
1. 定性数据(Qualitative Data):也称为分类数据,指的是具有分类性质的数据,无法用数值直接表示或比较大小。
定性数据描述的是某个对象的性质、类别或属性。
例如,衣服的颜色(红色、蓝色、绿色)、学生的性别(男、女)或产品的类型(食品、电子产品、家居用品)等。
2. 定量数据(Quantitative Data):也称为数值数据,指的是可以用数值表示的数据,具有可比较大小和可加减运算的性质。
定量数据是基于计数或测量得到的,可以进一步分为离散数据和连续数据。
离散数据表示具有可数的取值,例如人口数量、学生人数等;而连续数据表示在某个范围内可以取任意值,例如身高、体重等。
总之,非数值数据是指那些不以数值方式表示的数据,包括定性数据和定量数据两种类型。
在数据分析和统计中,我们需要根据数据类型的不同选择合适的分析方法和技巧。
c语言中的非法数非法数是指在计算机科学中,不符合特定规则或格式的数值。
在C 语言中,非法数的表示方式主要有以下几种:1. 无效字符:如果一个数包含了除数字、小数点和符号以外的字符,那么它就是非法数。
例如,"12a"、"3.5@"都是非法数。
2. 多个小数点:一个合法的数只能包含一个小数点,而不能有多个小数点。
因此,"4.2.1"和"3.."都是非法数。
3. 指数格式错误:在科学计数法中,一个数可以用e或E表示乘以10的幂。
例如,"1.2e3"表示1200。
但是,如果指数部分不是一个整数,或者指数部分包含非数字字符,则该数为非法数。
例如,"1.2e3.4"和"1.2eX"都是非法数。
4. 超出范围:在C语言中,浮点数的表示范围是有限的。
如果一个数超出了浮点数的表示范围,那么它就是非法数。
例如,超过了浮点数的最大值的数和小于浮点数的最小值的数都是非法数。
5. 非数字表示:在C语言中,可以用特殊的常量表示一些特殊的数值,如正无穷大、负无穷大和NaN(非数字)。
这些常量分别是INFINITY、-INFINITY和NAN。
如果一个数不是这些特殊常量,但是又被当作这些常量来使用,那么它就是非法数。
总结起来,C语言中的非法数主要包括包含无效字符、多个小数点、指数格式错误、超出表示范围和错误使用特殊常量等情况。
在编程过程中,我们应该注意避免使用非法数,以免导致计算错误或程序崩溃。
为了更好地理解非法数的概念,我们可以通过以下代码来演示非法数的情况:```c#include <stdio.h>int main() {float illegal1 = 12a; // 非法数,包含无效字符'a'float illegal2 = 3.5@; // 非法数,包含无效字符'@'float illegal3 = 4.2.1; // 非法数,多个小数点float illegal4 = 3..; // 非法数,多个小数点float illegal5 = 1.2e3.4; // 非法数,指数部分不是整数float illegal6 = 1.2eX; // 非法数,指数部分包含非数字字符float illegal7 = 1.2e1000000; // 非法数,超出浮点数的表示范围float illegal8 = 0/0; // 非法数,0除以0得到NaNfloat illegal9 = INFINITY - INFINITY; // 非法数,无穷大减无穷大得到NaNprintf("非法数示例:\n");printf("illegal1: %f\n", illegal1);printf("illegal2: %f\n", illegal2);printf("illegal3: %f\n", illegal3);printf("illegal4: %f\n", illegal4);printf("illegal5: %f\n", illegal5);printf("illegal6: %f\n", illegal6);printf("illegal7: %f\n", illegal7);printf("illegal8: %f\n", illegal8);printf("illegal9: %f\n", illegal9);return 0;}```上述代码中,我们定义了9个非法数的变量,并尝试输出它们的值。
非数值的表示
在计算机中,各种信息都是以二进制编码的形式存在的;也就是说,不管是文字、图形、声音、动画,还是电影等各种信息,在计算机中都是以0和1组成的二进制代码表示的;计算机之所以能区别这些信息的不同,是因为它们采用的编码规则不同。
比如:同样是文字,英文字母与汉字的编码规则就不同,英文字母用的是单字节的ASCII码,汉字采用的是双字节的汉字内码;但随着需求的变化,这两种编码有被统一的UNICODE码(由Unicode 协会开发的能表示几乎世界上所有书写语言的字符编码标准)所取代的趋势;当然图形、声音等的编码就更复杂多样了。
这也就告诉我们,信息在计算机中的二进制编码是一个不断发展的、高深的、跨学科的知识领域。
非数值数据,又称为字符数据,通常是指字符、字符串、图形符号和汉字等各种数据,它们不用来表示数值的大小,一般情况下不对它们进行算术运算。
1、字符编码
字符的编码采用国际通用的ASCII码(American Standard Code for Information Interchange,美国信息交换标准代码),每个ASCII码以1个字节(Byte)储存,从0到数字127代表不同的常用符号,例如大写A的ASCII码是65,小写a则是97。
由于ASCII码只用了字节的七个位,最高位并不使用,所以后来又将最高的一个位也编入这套编码码中,成为八个位的延伸
ASCII(ExtendedASCII)码,这套内码加上了许多外文和表格等特殊符号,成为目前常用的编码。
基本的ASCII字符集共有128个字符,其中有96个可打印字符,包括常用的字母、数字、标点符号等,另外还有32个控制字符。
标准ASCII 码使用7个二进位对字符进行编码,对应的ISO标准为ISO646标准。
字母和数字的ASCII码的记忆是非常简单的。
我们只要记住了一个字母或数字的ASCII码(例如记住A为65,0的ASCII码为48),知道相应的大小写字母之间差32,就可以推算出其余字母、数字的ASCII码。
虽然标准ASCII码是7位编码,但由于计算机基本处理单位为字节(1byte = 8bit),所以一般仍以一个字节来存放一个ASCII字符。
每一个字节中多余出来的一位(最高位)在计算机内部通常保持为0(在数据传输时可用作奇偶校验位)。
由于标准ASCII字符集字符数目有限,在实际应用中往往无法满足要求。
为此,国际标准化组织又制定了ISO2022标准,它规定了在保持与ISO646兼容的前提下将ASCII字符集扩充为8位代码的统一方法。
ISO陆续制定了一批适用于不同地区的扩充ASCII字符集,每种扩充ASCII字符集分别可以扩充128个字符,这些扩充字符的编码均为高位为1的8位代码(即十进制数128~255),称为扩展ASCII码
ASCII码编码表:
2、汉字编码
(一)汉字国标码
汉字国标码亦可称为汉字交换码,主要用于汉字信息处理系统之间或者通信系统之间交换信息使用,简称GB码。
该标准共收集常用汉字6 763个,另外还有各种图形符号682个,共计7 445个。
GB码规定每个汉字、图形符号都用两个字节表示,每个字节只使用低七位编码,因此最多能表示出128×128=16 384个汉字。
(二)汉字机内码
汉字在计算机内部其内码是唯一的。
因为汉字处理系统要保证中西文的兼容,当系统中同时存在ASCII码和汉字国标码时,将会产生二义性。
例如:有两个字节的内容为30H和21H,它既可表示汉字“啊”的国标码,又可表示西文“0”和“!”的ASCII码。
为此,汉字机内码应对国标码加以适当处理和变换。
GB码的机内码为二字节长的代码,它是在相应GB码的每个字节最高位上加“1”,即
汉字机内码=汉字国标码+8080H
例如,上述“啊”字的国标码是3021H,其汉字机内码则是B0A1H。
(三)汉字输入方法
大体可分为:区位码(数字码)、音码、形码、音形码。
区位码将汉字编码码中的6763个汉字分为94个区,每个区中包含94个
汉字(位),区和位组成一个二维数组,每个汉字在数组中对应一个唯一的区位码。
汉字的区位码定长4位,前2位表示区号,后2位表示位号,区号和位号用十进制数表示,区号从01到94,位号也从01到94。
例如,“中”
字在54区的48位上,其区位码为“54-48”,“国”字在25区的90位上,其区位码为“25-90”。
需要注意的是:汉字区位码并不等于汉字国标码,它们两者之间的关系可用以下公式表示:
国标码=区位码(十六进制)+2020H
优点是无重码或重码率低,缺点是难于记忆;
音码是音、形混合的编码。
优点是大多数人都易于掌握,但同音字多,重码率高,影响输入的速度。
形码:根据汉字的字型进行编码,编码的规则较多,难于记忆,必须经过训练才能较好地掌握;重码率低。
如:五笔。
音形码:将音码和形码结合起来,输入汉字,减少重码率,提高汉字输入速度;
(四)字形存储码字形存储码
是指供计算机输出汉字(显示或打印)用的二进制信息,也称字模。
通常,采用的是数字化点阵字模。
一般的点阵规模有16×16,24×24,64×64等,每一个点在存储器中用一个二进制位(bit)存储。
例如,在16×16的点阵中,需8×32
bit 的存储空间,每8 bit为1字节,所以,需32字节的存储空间。
在相同点阵中,不管其笔划繁简,每个汉字所占的字节数相等。
为了节省存储空间,普遍采用了字形数据压缩技术。
所谓的矢量汉字是指用矢量方法将汉字点阵字模进行压缩后得到的汉字字形的数字化信息。
3 图形的表示方法
计算机通过指定每个独立的点(或像素)在屏幕上的位置来存储图形,最简单的图形是单色图形。
单色图形包含的颜色仅仅有黑色和白色两种。
为了理解计算机怎样对单色图形进行编码,可以考虑把一个网格叠放到图形上。
网格把图形分成许多单元,每个单元相当于计算机屏幕上的一个像素。
对于单色图,每个单元(或像素) 都标记为黑色或白色。
如果图像单元对应的颜色为黑色,则在计算机中用0来表示;如果图像单元对应的颜色为白色,则在计算机中用1来表示。
网格的每一行用一串0和1来表示,如图3.2所示。
图3.2 存储一幅单色位图图像
对于单色图形来说,用来表示满屏图形的比特数和屏幕中的像素数正好相等。
所以,用来存储图形的字节数等于比特数除以8;若是彩色图形,其表示方法与单色图形类似,只不过需要使用更多的二进制位以表示出不同的颜色信息。
4声音的表示方法
通常,声音是用一种模拟(连续的)波形来表示的,该波形描述了振动波的形状。
如图3.3所示,表示一个声音信号有三个要素,分别是基线、周期和振幅。
图3.3 声音信号的三要素
声音的表示方法是以一定的时间间隔对音频信号进行采样,并将采样结果进行量化,转化成数字信息的过程,如图3.4所示。
声音的采样是在数字模拟转换时,将模拟波形分割成数字信号波形的过程,采样的频率越大,所获得的波形越接近实际波形,即保真度越高。
图3.4 声音信号的采样和量化
数字化遵循采样定理。
在实践中,通常使用三个参数来表示声音:采样位数、采样频率和声道数。
声道有单声道和立体声之分,甚至更多。
人能听见的声音的最高频率是20kHz,根据采样定理,44 100Hz(44kHz)的采样频率能够很好地还原各种声音,而普通人的声带能够达到4000Hz,所以8kHz的采样频率能够满足语言采样的需要。
其他采样频率有11 025Hz(11kHz)、22 050Hz(22kHz)等,能够适合不同的场景。
采样位数是每个采样点采用多少位来保存声音的强度值,采样位数越高,则还原时越精确。
如果不采用压缩技术,那么保存声音需要的空间可以这样计算:文件所占容量=(采样频率×采样位数×声道)×时间/8(1字节=8bit)。