信息学奥赛-计算机基础知识
- 格式:doc
- 大小:880.50 KB
- 文档页数:51
NOIP信息竞赛初赛计算机基础知识大全NOIP信息竞赛(全国青少年信息学奥林匹克竞赛)是中国的一项重要信息学竞赛活动,旨在选拔优秀的计算机科学与技术人才。
竞赛内容广泛,包括计算机基础知识、算法与数据结构、编程语言等方面的考查。
下面将从计算机基础知识方面,给出一些内容的简要介绍。
1.计算机硬件计算机硬件是指计算机中各种物理组件,包括中央处理器(CPU)、内存、硬盘、显卡等。
了解计算机硬件的基本原理,可以帮助我们更好地理解计算机的工作原理。
2.计算机操作系统计算机操作系统是计算机硬件与软件之间的桥梁,它管理计算机的各种硬件资源,为应用程序提供运行环境。
常见的操作系统有Windows、Linux、Mac OS等。
对不同操作系统的特点、命令以及常见问题的解决方法有一定的了解,有助于更好地使用计算机。
3.计算机网络计算机网络是指多台计算机通过通信设备互相连接起来,共享资源和信息。
了解计算机网络的基本概念、常用协议(如TCP/IP协议)、网络安全等知识,可以帮助我们更好地利用网络资源。
4.数据库数据库是指存储、管理和运行的大量数据的系统。
了解数据库的基本概念、常用数据库管理系统(如MySQL、Oracle等)、SQL语言等,可以帮助我们更好地存储和管理数据。
5.编程语言编程语言是计算机与程序员之间的一种交流方式,它将人类能够理解的指令转化为计算机可以执行的指令。
了解常见的编程语言(如C/C++、Java、Python等)的语法和特点,有助于我们进行程序设计与开发。
6.算法与数据结构算法是指解决问题的步骤和方法,数据结构是指数据的组织方式和操作方法。
了解常见的算法(如排序算法、查找算法等)和数据结构(如数组、链表、栈、队列等),可以帮助我们更好地设计和优化程序。
7.计算机安全与加密技术计算机安全是指保护计算机和计算机信息免受非法侵入和破坏的一种技术。
了解计算机安全的基本原理、常用的加密算法和密码学知识,可以帮助我们更好地保护计算机和信息的安全。
第一章计算机基础知识 (2)第一节数制及其转换 (2)第二节算术运算和逻辑运算 (3)第三节原码、反码和补码 (5)第四节浮点数的表示方法 (6)第五节奇偶校验 (7)第六节ASCII码表 (8)第二章计算机硬件基础 (9)第一节中央处理器 (9)第二节存储器系统 (10)第三节输入输出系统 (11)第三章网络基础知识 (12)第一节网络的组成与结构 (12)第二节网络协议 (13)第三节Internet相关知识 (13)第三节Internet相关知识 (14)第四章其他相关基础知识 (15)第一节计算机病毒 (15)第二节数据库系统 (15)第五章数据结构之线性结构 (16)第一节线性表 (16)第二节栈 (17)第三节队列 (18)第六章数据结构之非线性结构 (19)第一节树的概念 (19)笫二节树的表示方法和存储结构 (20)第三节二叉树的概念 (22)第四节二叉树的遍历 (24)第五节普通树的遍历 (27)第六节根据两种遍历顺序确定树结构 (28)第七节二叉排序树 (29)第八节最优二叉树(哈夫曼树) (30)AOE 网 (32)第一章计算机基础知识第一节数制及其转换一、二、八、十六进制转十进制的方法:乘权相加法。
例如:( 110 1 0110 ) 2 = 1 X27 + 1 X26 + 0 X 2'+ 1X2'+ 0X2‘+ 1X22 + 1X2'+ 0X2°=(214) io (2365) 8= 2X8'+ 3X82 + 6X81 + 5X8° = (1269) 10(4BF) 16二4X16'+ 11X161 + 15X16°二(1215)10带小数的情况:(110.011) 2 = 1X22 + 1X2' + 1X2°+ 0X2-1 + 1 X2-2 + 1X2-3 = (6. 375) 10(5. 76) 8 = 5X8°+ 7X8'1 + 6X8-2 = (5. 96875) 10(D. 1C)二13X16° + 1X16'+ 12*16之二(13. 109375) 10二、十进制化二进制的方法:整数部分除二取余法,小数部分乘二取整法。
信息学奥赛基础知识点一、知识概述《信息学奥赛基础知识点》①基本定义:信息学奥赛就是关于信息学方面的奥林匹克竞赛,简单说就像是信息学领域里的学霸争霸赛。
这里面包含好多知识,像计算机编程、算法设计、数据结构这些东西。
就是利用计算机程序去解决各种各样的问题,这些问题涵盖数学、逻辑等各方面。
②重要程度:在学科里那可是相当重要,因为它涵盖了很多计算机科学的基础内容。
通过参加这个奥赛,既能锻炼思维能力,又能很好地深入学习计算机相关知识。
而且在以后想要从事计算机相关专业或者在这个领域做研究等都很有帮助。
③前置知识:需要有一定的数学知识,像基本的算术运算、逻辑推理之类的。
还得懂点计算机的基本操作,像怎么开机、打开文件这种最基础的操作,再往深一点就是对操作系统大概的了解之类的。
④应用价值:在实际应用方面可多了。
比如说开发软件,掌握这些知识能优化算法,使软件运行得更快更高效。
在处理大数据的时候,信息学奥赛的那些算法思想在数据挖掘、分析里面就很有用。
二、知识体系①知识图谱:它处于信息学学科知识体系的顶端位置,牵扯到下面很多基本的知识单元,像是往上搭建的金字塔尖,需要下面的基础知识层层累叠起来支持。
②关联知识:和计算机语言、数学思维、算法优化等知识点联系紧密。
比如说你要实现一个算法可能得用一种编程语言来写,并且这个算法可能就是基于某个数学原理。
③重难点分析:掌握难度其实挺大的。
难点在于算法思维的建立,这不是一下子就能学会的,像是要凭空去想象构建一个解决复杂问题的方法。
关键在于多做多想多练,把各种算法模型刻在脑子里,还能灵活运用。
④考点分析:在考试中那肯定是重点。
考查方式多样,可能是给你个实际问题让你写程序解决,或者给个算法让你优化之类的。
三、详细讲解【理论概念类】①概念辨析:信息学奥赛中的算法是指解决问题的具体方法步骤。
比如说要给一群学生按照成绩排名,你设计的一种比较成绩大小进行排序的过程就是算法。
而数据结构则是数据的组织存储方式,像把学生们的信息按顺序一个一个存放,或者按照树状结构存放等。
信息学奥林匹克竞赛初赛知识汇总信息学奥林匹克竞赛初赛那可是相当有挑战性的呢。
1. 基础知识部分编程语言相关。
像C++、Pascal等语言的基础语法,变量的定义啦,数据类型的区别呀。
比如说int类型是用来表示整数的,像1、2、3这样的数就可以用int类型的变量来存储。
还有数据结构,数组、链表都是很重要的。
数组就像是一排整齐的小盒子,每个盒子可以放一个数据。
链表呢,就像是一串珠子,每个珠子有自己的数据还有指向下一个珠子的“指针”。
算法基础。
排序算法那是必须要知道的,冒泡排序就像是水里的泡泡,大的泡泡慢慢浮到上面,小的泡泡沉在下面,通过不断地比较和交换相邻的元素来实现排序。
还有快速排序,它就像是一把快刀,把数组分成两部分,然后再分别对这两部分进行排序。
2. 数学知识在竞赛中的运用数论方面。
质数、合数的概念得清楚,质数就是除了1和它本身以外不能被其他数整除的数,像2、3、5、7等。
还有最大公因数和最小公倍数的求法,辗转相除法就很好用哦。
组合数学。
排列组合的公式要牢记,从n个不同元素中取出m个元素的排列数公式是A(n,m)=n!/(n - m)!,组合数公式是C(n,m)=n!/m!(n - m)!。
这在解决一些计数问题的时候超级有用。
3. 计算机基础知识计算机的组成结构。
CPU就像是计算机的大脑,负责运算和控制。
内存呢,是计算机暂时存储数据的地方,硬盘则是长期存储数据的大仓库。
计算机网络知识。
IP地址是怎么回事,就像每台计算机在网络中的一个独特的“家庭住址”。
还有域名系统,像我们平常访问的网站域名,其实是对应着IP地址的,方便我们记忆。
希望这些知识汇总能让你在信息学奥林匹克竞赛初赛中更有底气呢。
§1计算机概述世界第一台电子数字式计算机于1946年美国宾夕法尼亚大学正式投入运行,它的名称叫ENIAC(埃尼阿克),是电子数值积分计算机的缩写。
它使用了17468个真空电子管,耗电174千瓦,占地170平方,重30吨,每秒钟可进行5000次加法运算。
被西方人誉为“计算机之父”的美籍匈牙利科学家、数学家冯·诺依曼于1945年发表了一个全新的"存储程序通用电子计算机方案"—EDVAC。
EDVAC方案提出了著名的“冯·诺依曼体系结构”理论:(1)采用二进制形式表示数据和指令在存储程序的计算机中,数据和指令都是以二进制形式存储在存储器中的。
从存储器存储的内容来看两者并无区别.都是由0和1组成的代码序列,只是各自约定的含义不同而已。
计算机在读取指令时,把从计算机读到的信息看作是指令;而在读取数据时,把从计算机读到的信息看作是操作数。
数据和指令在软件编制中就已加以区分,所以正常情况下两者不会产生混乱。
有时我们也把存储在存储器中的数据和指令统称为数据,因为程序信息本身也可以作为被处理的对象,进行加工处理,例如对照程序进行编译,就是将源程序当作被加工处理的对象。
(2)采用存储程序方式这是冯·诺依曼思想的核心内容。
如前所述,它意味着事先编制程序,事先将程序(包含指令和数据)存入主存储器中,计算机在运行程序时就能自动地、连续地从存储器中依次取出指令且执行。
这是计算机能高速自动运行的基础。
计算机的工作体现为执行程序,计算机功能的扩展在很大程度上也体现为所存储程序的扩展。
计算机的许多具体工作方式也是由此派生的。
冯·诺依曼机的这种工作方式,可称为控制流(指令流)驱动方式。
即按照指令的执行序列,依次读取指令,然后根据指令所含的控制信息,调用数据进行处理。
因此在执行程序的过程中,始终以控制信息流为驱动工作的因素,而数据信息流则是被动地被调用处理。
为了控制指令序列的执行顺序,设置一个程序(指令)计数器PC(ProgramCounter),让它存放当前指令所在的存储单元的地址。
§ 1 计算机概述 世界第一台电子数字式计算机于1946年美国宾夕法尼亚大学正式投入运行,它的名称叫ENIAC (埃尼阿克),是电子数值积分计算机的缩写。
它使用了17468个真空电子管,耗电174千瓦,占地170平方,重30吨,每秒钟可进行5000次加法运算。
被西方人誉为“计算机之父”的美籍匈牙利科学家、数学家冯·诺依曼于1945年发表了一个全新的"存储程序通用电子计算机方案"—EDVAC 。
EDVAC 方案提出了著名的“冯·诺依曼体系结构”理论: (1)采用二进制形式表示数据和指令 在存储程序的计算机中,数据和指令都是以二进制形式存储在存储器中的。
从存储器存储的内容来看两者并无区别.都是由0和1组成的代码序列,只是各自约定的含义不同而已。
计算机在读取指令时,把从计算机读到的信息看作是指令;而在读取数据时,把从计算机读到的信息看作是操作数。
数据和指令在软件编制中就已加以区分,所以正常情况下两者不会产生混乱。
有时我们也把存储在存储器中的数据和指令统称为数据,因为程序信息本身也可以作为被处理的对象,进行加工处理,例如对照程序进行编译,就是将源程序当作被加工处理的对象。
(2)采用存储程序方式这是冯·诺依曼思想的核心内容。
如前所述,它意味着事先编制程序,事先将程序(包含指令和数据)存入主存储器中,计算机在运行程序时就能自动地、连续地从存储器中依次取出指令且执行。
这是计算机能高速自动运行的基础。
计算机的工作体现为执行程序,计算机功能的扩展在很大程度上也体现为所存储程序的扩展。
计算机的许多具体工作方式也是由此派生的。
冯·诺依曼机的这种工作方式,可称为控制流(指令流)驱动方式。
即按照指令的执行序列,依次读取指令,然后根据指令所含的控制信息,调用数据进行处理。
因此在执行程序的过程中,始终以控制信息流为驱动工作的因素,而数据信息流则是被动地被调用处理。
第一章计算机基础知识 (3)第一节数制及其转换 (3)第二节算术运算和逻辑运算 (5)第三节原码、反码和补码 (8)第四节浮点数的表示方法 (10)第五节奇偶校验 (11)第六节ASCII码表 (13)第二章计算机硬件基础 (14)第一节中央处理器 (14)第二节存储器系统 (17)第三节输入输出系统 (19)第三章网络基础知识 (20)第一节网络的组成与结构 (20)第二节网络协议 (21)第三节Internet相关知识 (22)第三节Internet相关知识 (23)第四章其他相关基础知识 (25)第一节计算机病毒 (25)第二节数据库系统 (25)第五章数据结构之线性结构 (27)第一节线性表 (27)第二节栈 (29)第三节队列 (31)第六章数据结构之非线性结构 (33)第一节树的概念 (33)第二节树的表示方法和存储结构 (35)第三节二叉树的概念 (39)第四节二叉树的遍历 (42)第五节普通树的遍历 (47)第六节根据两种遍历顺序确定树结构 (49)第七节二叉排序树 (52)第八节最优二叉树(哈夫曼树) (53)AOE网 (56)第一章计算机基础知识第一节数制及其转换一、二、八、十六进制转十进制的方法:乘权相加法。
例如:(11010110)2 = 1×27 + 1×26 + 0×25 + 1×24 + 0×23 + 1×22 + 1×21 + 0×20 = (214)10(2365)8 = 2×83 + 3×82 + 6×81 + 5×80 = (1269)10(4BF)16 = 4×162 + 11×161 + 15×160 = (1215)10带小数的情况:(110.011)2 = 1×22 + 1×21 + 1×20 + 0×2-1 + 1×2-2 + 1×2-3 = (6.375)10(5.76)8= 5×80 + 7×8-1 + 6×8-2 = (5.96875)10(D.1C)16= 13×160+ 1×16-1 + 12*16-2 = (13.109375)10二、十进制化二进制的方法:整数部分除二取余法,小数部分乘二取整法。
信息学奥林匹克竞赛基础知识1.计算机的发展(1)电子计算机的定义:是一种能够根据程序指令和要求,自动进行高速的数值运算和逻辑运算,同时具有存储、记忆功能的电子集成设备。
(2)电子计算机的类型:巨型机、小巨型机、大中型机、小型机、工作站和个人机(即微型计算机,亦称PC机)。
(3)电子计算机的发展:已经经历了四代,目前正在向第五代过渡。
第一代(1946-1956):电子管器件;机器语言或符号机器语言,科学计算应用为主。
结构上以CPU为中心,使用机器语言,速度慢,存储量小,主要用于数值计算。
第二代(1957-1963):晶体管器件;结构上以存储器为中心,高级语言,管理程序与操作系统;应用扩展至事务处理领域。
第三代(1964-1973):集成电路(IC)器件;结构上以存储器为中心,增加了多种外部设备;软件得到一定发展,计算机处理图象、文字和资料功能加强,远程终端联机系统,更完整的系统软件与更广泛的应用领域。
第四代(1974-):大规模集成电路(LSI)、超大规模集成电路(VLSI)器件;微型计算机;巨型计算机。
计算机网络与分布式处理;软件工程;数据库技术;人工智能;应用深入到人类生活的各个领域。
微型计算机四个发展阶段:第一代:4位和低档8位微处理器;如Intel4004、Intel8008;萌芽状态。
第二代:8位微处理器;如Intel8080、Intel8085、MC6800、Z80等;成长阶段。
第三代:16位微处理器;如Intel8086、Z8000、MC68000;成熟阶段。
第四代:32位微处理器。
如Z80000、MC68020、Intel386、486以及Pentium;全盛时期。
全世界第一台电子计算机(ENIAC)于1946年2月14日在美国宾夕法尼亚大学装配完成。
2.计算机的应用领域:(1)科学计算:进行数值计算,针对计算数据量大和数值范围广的领域;(2)数据处理:对数据输入或输出量尤其巨大而计算过程则相对简单的事务进行处理;(3)过程控制:在工业生产过程中进行自动控制,使之具有良好的实时性和可靠性;(4)计算机辅助设计(CAD)/计算机辅助制造(CAM):可使大量的图形实现交互式操作;(5)计算机网络:现代计算机技术与通信技术紧密结合的产物。
初级教育学校信息学奥赛知识点总结信息学是一门涉及计算机科学和信息处理的学科,它在初级教育学校阶段已经开始被归入学校的课程体系中。
随着信息技术的不息进步,初级教育学校生也需要通过参与信息学奥赛来提高自己的信息技术能力。
在这篇文章中,我们将总结一些初级教育学校信息学奥赛的知识点。
一、计算机基础知识1. 计算机的组成部分:计算机主机、显示器、键盘、鼠标等。
2. 二进制:计算机语言使用的是二进制,了解如何将十进制数转化为二进制数。
3. 硬件和软件:硬件是计算机的物理部分,软件是指各种程序和操作系统。
4. 输入和输出设备:了解计算机的各种输入和输出设备,如打印机、扫描仪、耳机等。
二、编程基础知识1. 算法和流程图:进修如何编写算法和设计流程图,通过图形化的方式表示问题解决的步骤。
2. 编程语言:了解什么是编程语言,如何用编程语言编写程序,例如使用Scratch进行编程。
3. 变量和数据类型:进修如何使用变量和数据类型来存储和处理数据。
4. 循环和条件语句:精通如何使用循环和条件语句来控制程序的流程和执行。
三、网络和安全知识1. 网络基础知识:了解互联网的观点、常见网络设备和网络毗连的方式。
2. 网页设计:进修如何设计简易的网页,包括使用HTML和CSS等技术。
3. 网络安全:了解网络安全的基本观点,如何保卫个人信息和防止网络攻击。
4. 文件管理和备份:精通如何管理文件和文件夹,以及如何进行文件备份。
四、信息处理和数据分析1. 数据的收集和整理:进修如何收集和整理数据,如调查问卷、数据表格等。
2. 图表和统计分析:了解如何使用图表和统计分析工具来呈现和分析数据。
3. 数据的图像处理:进修使用图像处理工具对图像进行编辑、修饰和变换。
4. 查找和筛选:精通如何使用查找引擎进行信息查找和筛选。
五、计算机科学的应用领域1. 人工智能:了解人工智能的基本观点和应用领域,如机器进修、人脸识别等。
2. 虚拟现实:进修虚拟现实的原理和应用,如虚拟游戏、教育等。
第一章计算机基础知识 (2)第一节数制及其转换 (2)第二节算术运算和逻辑运算 (4)第三节原码、反码和补码 (7)第四节浮点数的表示方法 (9)第五节奇偶校验 (10)第六节 ASCII码表 (12)第二章计算机硬件基础 (13)第一节中央处理器 (13)第二节存储器系统 (15)第三节输入输出系统 (17)第三章网络基础知识 (19)第一节网络的组成与结构 (19)第二节网络协议 (20)第三节 Internet相关知识 (20)第三节 Internet相关知识 (21)第四章其他相关基础知识 (23)第一节计算机病毒 (23)第二节数据库系统 (23)第五章数据结构之线性结构 (25)第一节线性表 (25)第二节栈 (27)第三节队列 (29)第六章数据结构之非线性结构 (31)第一节树的概念 (31)第二节树的表示方法和存储结构 (33)第三节二叉树的概念 (36)第四节二叉树的遍历 (40)第五节普通树的遍历 (44)第六节根据两种遍历顺序确定树结构 (46)第七节二叉排序树 (47)第八节最优二叉树(哈夫曼树) (48)AOE网 (50)第一章计算机基础知识第一节数制及其转换一、二、八、十六进制转十进制的方法:乘权相加法。
例如:(11010110)2 = 1×27 + 1×26 + 0×25 + 1×24 + 0×23 + 1×22 + 1×21 + 0×20= (214)10(2365)8 = 2×83 + 3×82 + 6×81 + 5×80 = (1269)10(4BF)16 = 4×162 + 11×161 + 15×160 = (1215)10带小数的情况:(110.011)2 = 1×22 + 1×21 + 1×20 + 0×2-1 + 1×2-2 + 1×2-3 = (6.375)10(5.76)8= 5×80 + 7×8-1 + 6×8-2 = (5.96875)10(D.1C)16= 13×160+ 1×16-1 + 12*16-2 = (13.109375)10二、十进制化二进制的方法:整数部分除二取余法,小数部分乘二取整法。
例一:(43)10 = (101011)2例二:(0.375)10 = (0.011)2三、二进制转八进制的方法一位数八进制与二进制对应表三、二进制转十六进制的方法一位数十六进制与二进制对应表四、进制的英文表示法:以上都是用括号加数字的表示方法,另外还有英文表示法,就是以BIN、OCT、HEX、DEC分别代表二、八、十六、十进制。
或者只写第一个字母。
例如1101B表示是二进制。
有些地方为了避免“O”跟“0”混淆,把O写成Q。
第二节算术运算和逻辑运算一、二进制的算术运算1、加法运算规则:0+0=0 0+1=1 1+0=1 1+1=102、减法运算规则:0-0=0 0-1=1(向高位借1) 1-0=1 1-1=03、乘法运算规则:0×0=00×1=01×0=01×1=1二、逻辑运算1、基本运算①逻辑乘,也称“与”运算,运算符为“·”或“∧”0·0=00·1=01·0=01·1=1使用逻辑变量时,A·B可以写成AB②逻辑加,也乘“或”运算,运算符为“+”或“∨”0+0=0 0+1=1 1+0=1 1+1=1③逻辑非,也称“反”运算,运算符是在逻辑值或变量符号上加“—”0 = 1 1 = 02、常用运算异或运算:A⊕B =A·B+A·B2、基本公式① 0,1律A·0=0A·1=AA+0=AA+1=1②交换律A+B=B+AA·B=B·A③结合律A+B+C =(A+B)+C = A+(B+C)A·B·C =(A·B)·C = A·(B·C)④分配律A·(B+C)= A·B +A·C⑤重叠律A+A+...+A = AA·A·...·A = A⑥互补律A + A = 1 A·A = 0⑦吸收律A+A·B = A A·(A+B) = AA+A·B = A+B A·(A+B) = A·B⑧对合律对一个逻辑变量两次取反仍是它本身⑨德·摩根定理A+ = A·BBA•= A+BB三、逻辑代数的应用1、逻辑表达式化简例如: F = A·B+A·B+A·B=A·B+A(B+B)(利用分配律)=A·B+A (利用互补律以及0,1律)= A+B(利用吸收律)2、对指定位进行运算,假设变量A有八位,容是d7d6d5d4d3d2d1d0①将变量A的d5位清零A·(11011111)→A②将变量A的各位置1A+(11111111)→A第三节原码、反码和补码计算机中参与运算的数有正负之分,计算机中的数的正负号也是用二进制表示的。
用二进制数表示符号的数称为机器码。
常用的机器码有原码、反码和补码。
一、原码求原码的方法:设X;若X≥0,则符号位(原码最高位)为0,X其余各位取值照抄;若X≤0,则符号位为1,其余各位照抄。
【例1】X=+1001001 [X]原 = 01001001【例2】X=-1001001 [X]原= 11001001二、反码求反码的方法:设X;若X≥0,则符号位(原码最高位)为0,X其余各位取值照抄;若X≤0,则符号位为1,其余各位按位取反。
【例3】X=+1001001 [X]反 = 01001001【例4】X=-1001001 [X]反 = 10110110三、补码求补码的方法:设X;若X≥0,则符号位(原码最高位)为0,X其余各位取值照抄;若X≤0,则符号位为1,其余各位按位取反后,最低位加1。
【例5】X=+1001001 [X]补 = 01001001【例6】X=-1001001 [X]补= 10110111四、补码加减法计算机中实际上只有加法,减法运算转换成加法运算进行,乘法运算转换成加法运算进行,除法运算转换成减法运算进行。
用补码可以很方便的进行这种运算。
1、补码加法[X+Y]补 = [X]补 + [Y]补【例7】X=+0110011,Y=-0101001,求[X+Y]补[X]补=00110011 [Y]补=11010111[X+Y]补 = [X]补 + [Y]补= 00110011+11010111=00001010注:因为计算机中运算器的位长是固定的,上述运算中产生的最高位进位将丢掉,所以结果不是100001010,而是00001010。
2、补码减法[X-Y]补 = [X]补 - [Y]补=[X]补 + [-Y]补其中[-Y]补称为负补,求负补的方法是:对补码的每一位(包括符号位)求反,最后末位加“1”。
【例8】X=+0111001,Y=+1001101,求[X-Y]补[X]补=00111001 [Y]补=01001101 [-Y]补=10110011[X-Y]补 = [X]补 + [-Y]补= 00111001+10110011=11101100五、数的表示围通过上面的学习,我们就可以知道计算机如果用一个字节表示一个整数的时候,如果是无符号数,可以表示0~255共256个数(00000000~11111111),如果是有符号数则能表示-128~127共256个数(10000000~01111111)。
如果两个字节表示一个整数,则共有65536个数可以表示,大部分程序设计语言中整数的围都是-32768~32767的原因,可以看出这种整数类型是16位的有符号数,而且是补码表示的。
第四节浮点数的表示方法一、浮点数表示一个数的浮点形式(设基数是2)可写成:N = M × 2E其中:M代表尾数,E代表阶码。
计算机中浮点数只用尾数和阶码表示,其形式如下:浮点数的精度由尾数决定,数的表示围由阶码的位数决定。
为了最大限度提高精度,尾数采用规格化形式,既1/2≤M<1。
采用二进制表示时,若尾数大于零,则规格化数应该是01XXXX的形式;若尾数小于零,则规格化数应为10XXXX的形式。
二、机器零当浮点数的尾数为0或阶码为最小值时,计算机通常把该数当作零,因此程序中进行浮点运算时,判断某数是否为零,通常可以用小于某个极小值来代替。
三、实例【例1】设X=0.0110×23,用补码、浮点数形式表示阶码为X j=011,尾数为00110,这时由于X尾数不符合01XXXX的形式,因此不是规格化数,必须先进行规格化处理。
方法:若尾数小于1/2,把尾数左移一位(不包括符号位),观察结果是否满足规格化条件,满足则在把阶码减1即可,否则继续左移和调整阶码;若尾数大于1,则把尾数右移一位(不包括符号位),观察结果是否满足规格化条件,满足则在把阶码加1即可,否则继续右移和调整阶码。
上例中,00110左移一位为01100,符合规则化标准,此时阶码减1,为010即得到浮点表示形式。
这个数具体在计算机中如何表示要看计算机中规定的阶码和尾数的位数,若阶码和尾数均为16位,则上面的数X在计算机部表示就是00000000000000100110000000000000 ,不足均用零填充。
第五节奇偶校验计算机中数据在进行存储和传输过程中可能会发生错误。
为了及时发现和纠正这类错误,在数据传输(存储)过程中要进行校验,常用的校验方法就是奇偶校验。
奇偶校验能发现一位或奇数位错误,且不能纠正错误。
一般以字节(八位二进制)为单位加1位奇偶校验位。
奇偶校验分奇校验和偶校验两种。
一、奇校验:一个字节前面加一位校验位使得“1”的个数保持为奇数,若八位二进制数中“1”的个数为偶数,则校验位为“1”;若八位二进制数中“1”的个数为奇数,则校验位为“0”。
【例1】给1001100101101101加奇校验结果为110011001001101101二、偶校验:一个字节前面加一位校验位使得“1”的个数保持为偶数,若八位二进制数中“1”的个数为偶数,则校验位为“0”;若八位二进制数中“1”的个数为奇数,则校验位为“1”。
【例2】给1001100101101101加偶校验结果为010011001101101101第六节 ASCII码表目前使用最广泛的西文字符集及其编码是 ASCII 字符集和 ASCII 码( ASCII 是 American Standard Code for Information Interchange 的缩写),它同时也被国际标准化组织( International Organization for Standardization, ISO )批准为国际标准。