计算机Word下载.docx
《计算机Word下载.docx》由会员分享,可在线阅读,更多相关《计算机Word下载.docx(41页珍藏版)》请在冰豆网上搜索。
十六进制数,用0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F十六个数码表示数值,采用“逢十六进一”计数原则。
2.2各种数制间相互转换
一、非十进制转换为十进制---“位权展开法“
1)二进制数1011101.1001转换成十进制数
(1011101.1001)2=1×
26+0×
25+1×
24+1×
23+1×
22+0×
21+1×
20+1×
2-1+0×
2-2+0×
2-3+1×
2-4
=64+16+8+4+1+0.5+0.0625
=(93.5625)10
2)八进制数763.24转换成十进制数
(763.24)2=7×
82+6×
81+3×
80+2×
8-1+4×
8-2
=448+48+3+0.25+0.0625
=(499.3125)10
3)十六进制数B2F转换成十进制数
(B2F)16=B×
162+2×
161+F×
160
=11×
161+15×
=2816+32+15=(2863)10
二、十进制转换为非十进制---“求余法”(整数)或“得整数法”(小数)
(A)整数
1)十进制整数125转换成对应的二进制整数
2125余数
2621
2310
2151
271
231
211
01
则得:
(125)10=(1111101)2
2)十进制整数125转换成对应的八进制整数
8125余数
8155
817
01
(125)10=(175)8
3)十进制整数125转换成对应的十六进制整数
16125余数
16713(D)
07
(125)10=(7D)16
(B)小数
1)十进制小数0.625转换成对应的二进制小数。
0.625整数部分
×
2
1.2501
0.25
0.50
2
1.0
1
(0.625)10=(0.101)2
2)十进制小数0.625转换成对应的八进制小数
0.625整数部分
8
5.0005
(0.625)10=(0.5)8
3)十进制小数0.625转换成对应的十六进制小数
0.625整数部分
16
3750
+625
10.00010(A)
(0.625)10=(0.A)16
总结:
如果一个十进制数既有整数部分,又有小数部分,则应将整数部分和小数部分分别进行转换,然后把两者相加便得到结果
三、二进制与八进制、十六进制之间的转换
1)二进制数1101100111.10011转换成对的八进制数
001101100111.100110
154746
(1101100111.10011)2=(1547.46)8
2)八进制数576.32转换成对应的二进制数
(576.32)8=101111110.011010
(576.32)8=(101111110.01101)2
3)二进制数1101100111.10111转换成对应的十六进制数
001101100111.10111000
367B8
(1101100111.10111)2=(367.B8)16
4)十六进制数5FD4.A3转换成对应的二进制数
(5FD4.A3)16=0101111111010100.10100011
(5FD4.A3)16=(101111111010100.10100011)2
2.3码制
1)数据分类:
数值型和非数值型
☆数值型
A.正、负号的计算机内部表示
符号位:
数值型数据的最高位用来表示数值的正负,用“0”表示“+”号,用“1”表示“﹣”号
B.码制表示
计算机中机器数可用不同码制表示,常用码制有原码、反码和补码表示法
原码表示法:
最高位:
真值符号(正为0,负为1)
其余n-1位:
为数值位且与真值的数值位相同
数X的原码记为[X]原、原码表示数的范围与机器字长有关
机器字长八位:
范围为﹣127~+127。
即最小数是11111111,最大数是01111111
机器字长十六位:
范围为﹣32767~+32767
反码表示法:
正数:
反码和原码相同
负数:
反码是对该数的原码除符号位外各位取反,即“0”变“1”,“1”变“0”。
数X的反码记为[X]反
如:
机器字长8位,二进制数+1011011和﹣1011011的反码分别表示为01011011和10100100
补码表示法:
补码和原码相同
补码是对该数的原码除符号位外各位取反,最末位加1。
即:
反码加1。
数X的补码记为[X]补
机器字长8位,二进制数+1011011和﹣1011011的补码分别表示为01011011和10100101
表示数范围:
与二进制数的位数(即机器字长)有关,用八位二进制数表示时,最高位为符号位,整数补码表示的范围为﹣128~+127。
用十六位二进制数表示整数补码时,范围为﹣32768~+32767
C.溢出判断
无符号数的溢出判断:
无符号数是指定义的数没有负数,即全部是正数,最高位是数值位,不是符号位。
当字长为8位时,若两个无符号数运算,结果超过了字长,称为无符号数溢出。
11111100(>
0)
+00100000(>
=100011100(超过8位字长)
有符号数的判断:
有符号数是指最高位为符号位,即可能是正数或负数,当两个有符号数运算时,结果不正确(超过了规定字长所表示的有符号数范围),称为有符号数溢出。
01111100(>
+01000000(>
=10111100(<
0,错误)
解决办法:
(如,采用双符号位)
001111100(>
+001000000(>
=010111100(>
0,正确)
D.定点数与浮点数
(1)定点数表示法
小数点位置:
隐含表示
定点整数:
小数点隐含固定在整个数值的最右端,符号位右边所有的位数表示的是一个纯整数。
计算机中格式表示如下:
定点小数:
小数点隐含固定在最高数值位的左边,符号位右边,参与运算的数是纯小数。
(2)浮点数表示法
浮点数分成阶码和尾数两部分来表示,其中阶码一般用补码定点整数表示,阶码用于表示该数的小数点位置,尾数一般用补码或原码定点小数表示。
字长给定的情况下:
阶码的位数越多:
表示数范围变大,但尾数的位数减少,数的精度降低。
阶码的位数减少:
数的表示范围变小,但尾数的位数增加,数的精度提高。
☆非数值型
1.ASCII码
字符是计算机使用最多的非数值型数据。
ASCII码常用7位二进制进行编码,共可表示27=128个字符。
ASCII码的最高位b7(最低位为b0)常作为奇偶校验位。
所谓奇偶校验,是指代码传送过程中用来检验是否出现错误的一种方法,分奇校验和偶校验两种。
常见字符ASCII码:
’A’=41H,‘B’,…等依次加一即得。
’a’=61H,‘b’,…等依次加一即得。
’0’=30H,‘1’,…等依次加一即得。
2.汉字编码
根据汉字使用频率的高低、构词能力强弱、实际用途的大小划分为两级汉字,一级汉字3755个,二级汉字3008个。
汉字输入码:
方便人工通过输入设备输入汉字而设计。
区位码、智能ABC码、五笔字型码。
国标码:
用于汉字信息处理系统之间或通信系统之间进行信息交换,国标GB2312-80制定了汉字交换码的标准。
国标码任何一个汉字或图形符号都用两个7位的二进制数表示,计算机中用两个字节表示,每个字节的最高位为0,剩余7位为GB2312-80二进制编码。
机内码:
供计算机系统内部进行汉字存储、加工处理、传输统一使用的代码。
俗称变形国标码。
其中:
机内码=国标码+8080H国标码=区位码+2020H
3.逻辑代数与逻辑电路基础:
1847英国数学家乔治·
布尔创立逻辑代数,所以又叫布尔代数
逻辑代数与普通代数有本质的区别,逻辑代数表示的不是数量大小之间的关系,而且逻辑关系,逻辑代数中的0和1,不是数量的0和1,它只代表所要研究问题的两种可能性或两种稳定的物理状态。
1.逻辑变量和逻辑函数
逻辑电路具有输入和输出间的逻辑关系,为了对输入和输出间的逻辑关系进行数学表达和演算,所以提出了逻辑变量和逻辑函数两个术语。
一个逻辑电路如下图所示,A,B为输入,F为输出,输入和输出之间的逻辑关系为F=f(A,B)。
F
A
B
A,B,F为逻辑变量
F=(A,B)为逻辑函数
逻辑变量和逻辑函数的逻辑取值,只取两个值0和1,通常称为逻辑0和逻辑1。
2.逻辑运算
基本运算:
逻辑与、逻辑或、逻辑非和异或运算。
逻辑与:
0·
0=00与0等于0
0·
1=00与1等于0
1·
0=01与0等于0
1=11与1等于1
逻辑或:
0+0=00或0等于0
0+1=10或1等于1
1+0=11或0等于1
1+1=11或1等于1
逻辑非运算
0=1非0等于1;
1=0非1等于0
异或运算
0⊕0=00同0异或,结果为0
0⊕1=10同1异或,结果为1
1⊕0=11同0异或,结果为1
1⊕1=01同1异或,结果为0
3.逻辑电路基础
能实现逻辑运算的电路称为逻辑门电路(简称门电路),常用的门电路有“与”门、“或”门、“非”门、“与非”门、“或非”门、“异或”门等。
由基本门电路按逻辑设计可以组合成计算机硬件的基本功能电路。
(A)门电路符号
“与”门
“或”门
也可表示为:
“非”门
“异或”门
其他的“与非”门、“或非”门等、只要和非门一样,方框后面加圆圈即可。
(B)逻辑组合电路的分析与设计
逻辑组合电路设计的步骤如下:
①描述逻辑电路应具备的逻辑功能
②构造真值表
③写逻辑函数表达式
④根据简化的逻辑函数表达式画逻辑图
例:
设计三人表决电路(A、B、C)。
每人一个按键,如果同意则按下,不同意则不按。
结果用指示灯表示,多数同意时指示灯亮,否则不亮。
1.首先指明逻辑符号取“0”、“1”的含义
三个按键A、B、C按下时为“1”,不按时为“0”。
输出是F,多数赞成时是“1”,否则是“0”。
2.根据题意列出真值表
3.应用逻辑代数法则化简
(这里Y=F,C+C=1)
4.根据逻辑表达式画出逻辑图
(1)若用与或门实现
(2)若用与非门实现
4.计算机的基本结构和工作原理
4.1计算机硬件的基本结构
美国数学家冯.诺依曼提出:
计算机由五个基本部分组成:
运算器、控制器、存储器、输入设备、输出设备。
描述了:
五大部分的功能及其相互关系。
提出了:
“采用二进制”和“存储程序”两个重要基本思想。
(a)“采用二进制”----计算机中的数据和指令均以二进制形式存储和处理;
(b)“存储程序”------将程序事先存入存储器,计算机工作时自动从存储器读取指令、分析后执行。
1.运算器
在控制器控制下执行程序中指令,完成各种算术和逻辑运算。
包括:
算术逻辑单元(ALU)和寄存器。
(a)ALU:
加、减、乘、除等四则运算
与、或、非、移位等逻辑运算
(b)寄存器:
暂存参加运算的操作数或运算结果。
2.控制器
指挥整个计算机的各个部件按照指令的功能要求协调工作。
组成:
(a)程序计数器(PC):
存放将执行指令在内存储器中的存储地址
(b)指令寄存器(IR):
暂时保存正在执行的指令
(c)指令译码器(ID):
译码指令操作码,识别指令进行的操作
(d)时序电路:
生成时序信号,协调指令执行周期部件工作
(e)微操作控制电路:
产生各种控制操作命令
控制器和运算器合在一起,即CPU。
3.存储器
计算机记忆和存储部件,存储数据和程序。
●按功能分为内存储器和外存储器
(1)内存储器(简称内存)
作用:
也称主存储器(简称主存),存放运行程序的指令和数据。
组成:
半导体存储器组成。
特点:
直接与CPU交换信息,存取速度快,容量较小,价格相对外存高等。
内存分类:
存取方式分:
随机访问存储器(RAM)和只读存储器(ROM)
(a)RAM:
读写存储器,存放正在执行的程序及所需数据。
存取速度快,但只临时存储信息,即:
加电,记忆信息;
断电,RAM中信息丢失。
(b)ROM:
只能读出而不能重新写入,信息是制作时专门仪器写入。
断电,信息不丢失。
ROM常用来存放一些专用程序、数据和系统配置。
如磁盘引导程序、自检程序、I/O驱动程序等。
(2)外存储器(简称外存)
又称辅助存储器,是内存扩充。
存储容量大、价格低、但存取速度较慢,不能与CPU直接交换信息等。
作用:
一般存放需要长期保存、暂时不用的程序、数据和结果,需要时可成批和内存信息交换。
常用外存:
磁盘(软盘、硬盘)、光盘、磁带等。
外存容量:
KB、MB、GB、TB表示。
4.2程序设计基础
☆计算机程序:
有序指令的集合或具有一定结构的语句集合。
☆程序设计大致需三步:
①确定算法与数据结构;
②用流程图表示程序思想;
③用程序设计语言编制计算机程序。
☆程序设计方法:
结构化程序设计和面向对象程序设计
(1)结构化程序设计
特点:
荷兰学者Dijkstra70年代提出,主要思想是自顶向下、逐步求精、模块编程。
结构化程序设计采用单入口单出口控制结构,即:
顺序、选择、循环。
任何算法都可用这三种基本结构实现,任何复杂的程序都可分解为由三种基本结构组成。
(2)面向对象的程序设计
对象------数据和处理数据的过程(函数或方法)形成整体。
对象的重复使用------程序建立了对象,其他程序员可在其他程序使用这个对象,不必重新编制。
节省开发时间,提高软件开发效率。
三个特性------封装性、继承性和多态性
封装性:
把数据结构同操作数据的过程组合在一起,封装在一个
类中。
封装性能保护类中的数据与过程的安全,防止外
界干扰和误用。
继承性:
符合人的思维,通过继承,一个对象可获得另一个对象
的属性,并可加入一些属于自己的特性。
多态性:
就是一个接口,多种方式。
优点在于通过提供一个相同
的接口,可通过不同的动作来访问,降低了问题的复杂
度。
ClassHuman{//父类
Intcert;
(属性:
身份证号)
Intsex;
性别)
sleep(){(函数或方法,睡眠)
…}
}
ClassStudentextendsHuman{//子类,父类是Human
PrivateIntsno;
学号)
PrivateIntcno;
课程编号)
PrivateIntscore;
课程分数)
PrivateGetscore(){(函数或方法,得到课程分数)
PrivateDispscore(){(函数或方法,显示课程分数)
PrivateSetscore(){(函数或方法,设置课程分数)
run(inti){(函数或方法,跑步,i表示圈数)
run(datad){(函数或方法,跑步,d表示日期)
}
//上面的属性和方法封装的很好,只在Student中使用,当然,程序设计中,可给予更多的灵活性设置,如是否允许外面访问等。
//子类继承了父类中的属性和方法,即Student有身份证号、性别等属性,也继承了父类的方法sleep。
//Student有两个方法run,但具体实施的动作不同,得到的结果也不同,即具有多态性。
//对象定义:
Students1,s2,s3,…;
//基于类,定义多个对象s1,s2,s3,…
☆程序设计语言
分机器语言、汇编语言、高级语言、面向对象语言等
1.机器语言
(a)计算机第一代语言,由0、1构成的机器指令(构成:
操作码,地址码)集合。
(b)最底层、能直接被机器接受。
(c)计算机硬件可直接识别,执行速度快。
(d)不同CPU,机器语言也不同。
(e)不易记忆,编写难度大,不易移植,是面向机器的程序设计语言。
2.汇编语言
(a)第二代程序设计语言。
(b)机器语言“符号化”,助记符代替操作码,地址符代替地址码。
(c)面向机器的语言。
程序执行效率较高,通用性与可移植性较差。
(d)计算机不能直接识别用汇编语言编写的程序,须由专门翻译程序将汇编语言程序翻译成机器语言,计算机才能执行。
3.高级语言
(a)面向问题的程序设计语言。
(b)与计算机硬件无关,表达方式接近于被描述问题,接近自然语言和数学语言,易接受和掌握。
通用性和可移植性好。
(c)编写的源程序不能直接执行,执行前,须由编译程序或解释程序翻译成机器能接受的目标代码。
编写的程序,执行时间和空间效率差。
☆算法与数据结构
A)软件系统开发,遵循几个步骤:
1.分析问题,确定算法
分析解决的问题,提取操作对象,找出操作对象间关系。
确定具体解决问题方法和步骤,设计出优化算法。
2.选择程序设计语言进行程序设计
算法转换成程序代码。
程序常定义:
程序=算法+数据结构+程序设计语言+工具和环境
3.程序测试
设计一组测试数据,使用这组测试数据运行程序。
B)算法
算法的定义:
是解题的步骤,是一组有穷的规则,规定了解决某一特定问题的一系列运算,是对解题方案的准确与完整的描述。
具有的特性:
♀确定性(给定输入,输出确定。
同一输入,两次运行,结果相同)
♀有穷性(算法的执行过程总是要结束的)
♀可行性(算法总是可以实现的)
♀输入和输出。
C)数据结构
数据元素:
数据集合中的一个个体,是数据的基本单位。
数据结构:
相互间存在某种关系的数据元素集合。
几种典型的数据结构:
♀线性表
定义:
由n(n≥0)个数据元素(结点)a1,a2,……an组成的有限序列。
不同线性表中的数据元素可是各种各样,但同一线性表中的元素必是同一类型的数据对象。
存储结构:
顺序存储和链式存储结构
顺序存储:
数据元素按次序依次存放在一组地址连续的存储单元里。
设:
线性表的每个元素占用C个存储单元
表中开始第一个元素a1的存储地址是Loc(a1)
那么:
线性表的第i个数据元素ai的存储地址
Loc(ai)=Loc(a1)+(i-1)*C1≤i≤n
确定起始位置,任一数据元素都可随机存取,所以线性表的顺序存储是一种随机存取的存储结构。
优点:
可随机存取表中任一结点,实现对线性表的某些操作比较简单,如:
计算线性表的长度、存取线性表中的任意一个结点、查找线性表中某一元素等等。
缺点:
实现线性表线性表的插入和删除操作时,需要移动大量数据元素而花费较多的时间。
链式存储:
每个数据元素的存储表示包括两个域:
数据域-----存储数据元素信息的域;
指针域-----存储直接后继存储位置的域
存储单元可连续,也可不连续,甚至是零散分布在内存,线性表的链式存储又称链表。
优点:
插入、删除操作简单,只须修改相应的指针域。
缺点:
不能随机存取数据元素,只能顺序存取,实现查找繁琐。
特殊的线性表:
栈----插入和删除数据的操作仅限制在表的一端(即表尾)进行,通常称插入、删除一端为栈顶,另一端称为栈底。
♀树
客观世界大量存在树结构,如族谱、行政组织机构都可用树形象表示。
①树的基本概念
树:
n(n≥0)个结点的有限集T,T为空称为空树,T非空,有且仅有一个特定结点称为根结点,其余结点可被分成m(m≥0)