C计算机基础知识_第1页
C计算机基础知识_第2页
C计算机基础知识_第3页
C计算机基础知识_第4页
C计算机基础知识_第5页
已阅读5页,还剩45页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

计算机基础知识计算机基础知识1.1 计算机原理概述1.2二进制数在计算机中的应用1.3程序设计常用进制数1.1计算机原理概述计算机、单片机:系统包含CPU、存储器和输入/输出接口等电路模块。如果集成在单片的芯片上,就是单片机。1.1.1计算机硬件系统1.1计算机原理概述

电子计算机的问世,最重要的奠基人是英国科学家艾兰·

图灵(AlanTuring)和美籍匈牙利科学家冯·

诺依曼(JohnVon·

Neuman)。图灵的贡献是建立了图灵机的理论模型,奠定了人工智能的基础。冯·

诺依曼则是首先提出了计算机体系结构的设想。1、冯·诺依曼体系

1946年美籍匈牙利科学家冯·诺依曼提出存储程序原理,把程序本身当作数据来对待,程序和该程序处理的数据用同样的方式存储,并确定了存储程序计算机的五大组成部分和基本工作方法。

1.1计算机原理概述1.1计算机原理概述CPU(包含运算器和控制器)执行程序,实现对数据信息进行处理和对整个系统进行控制。存储器包括随机存取存储器(RAM)和只读存储器(ROM),用来存放数据和程序。输入/输出(I/O)接口电路实现微处理器与外部设备的连接,沟通微型机与外界之间的信息联系。1.1计算机原理概述2、计算机系统信息传送通道

总线:用来传送信息的一组导线,为CPU和其它部件之间提供数据、地址和控制信息的传输通道。地址总线:专门用来传送地址信息。数据总线:用于传送数据信息。控制总线:用来传送控制信号。1.1计算机原理概述1.1.2计算机软件系统系统软件

系统软件是指控制和协调计算机及外部设备,支持应用软件开发和运行的系统,是无需用户干预的各种程序的集合。

应用软件用户可以使用的各种程序设计语言,以及用各种程序设计语言编制的应用程序的集合,分为应用软件包和用户程序

1.1计算机原理概述1.1.3计算机的工作过程在进入运行前,要将事先编好的程序装入存储器中。程序:为了完成某项工作而由指令进行的有序组合。指令:计算机执行某种操作的命令。通常由操作码和操作数两部分组成,操作码代表要执行的操作,而操作数表示参加操作的数或者操作数所在的地址。

1.1计算机原理概述指令在存储器中是顺序存放的,而指令的执行过程一般分为两个阶段:1.读取指令在CPU的控制下,由内部程序指示器形成指令存储地址并从该地址中读取指令后送到指令寄存器中保存;2.执行指令在CPU的控制下,由指令译码器对指令译码,产生各种定时和控制信号,并执行该指令所规定的操作。1.1计算机原理概述1.2二进制数在计算机中的应用1.2.1二进制数1、进位计数制/数制按进位方式实现计数的一种规则,简称为进位制或数制。数制有两个基本要素:基数:表示某种进位制所具有的数字符的个数以及进位的规则位权(简称权):表示一个进位计数制的数中不同数位上数字的单位数值,第i位的权即为基数的i次幂1>十进制十进制数的基数为10,由0-9十个数字符,逢十进一。十进制的表示方式:其中m表示小数位的位数,n表示正数的位数,K为0-9。1.2二进制数在计算机中的应用2.>二进制基数为2的数制为二进制,有0、1两个数字符,逢二进一。任何一个二进制数N可以表示为:其中m、n的含义与上述相同,K为0-1。1.2二进制数在计算机中的应用3.>十六进制基数为16的数制为十六进制,有0-9、A、B、C、D、E、F十六个数字符(其中A-F分别表示10一15),遭十六进一。一个十六进制数N可以表示为:二进制数的位数多,书写和阅读很不方便,容易出错。

微机中通常采用十六进制数作为二进制数的缩写形式,书写简单.一目了然。

1.2二进制数在计算机中的应用4.>其他进制12进制与钟算术24进制与标准时间表示法天文历法中的进制1.2二进制数在计算机中的应用1.2.2计算机中二进制数的存储单位1、位(Bit)位是计算机所能表示的最小数据单位,即1位二进制数1或者0。2、字节(Byte)8位二进制数称为一个字节。最基本的数据单位。1.2二进制数在计算机中的应用3、字(Word)16位二进制数称为一个字。1个字有2个字节。视CPU不同,字在内存中有两种不同的存放方式:

顺序存放,即字的高8位(高字节)存放在低地址单元,低8位(低字节)存放在高地址单元(高位在前,低位在后)

逆序存放,即字的低字节存放在低地址单元,高字节存放在高地址单元。(低位在前,高位在后)

字用于衡量计算机一次性处理数据的能力。1.2二进制数在计算机中的应用1.2二进制数在计算机中的应用1、机器数和真值在计算机中,将“+”、“-”符号数字化,用“0”表示“+”号,用“1”表示“-”号。这样的数称为机器数,而把机器数所代表的数的实际值称为机器数的真值。例如,真值x1=+1001001x2=-1001001

机器数x1=01001001x2=110010011.2.3机器数的表示形式2、无符号数与有符号数的机器数表示无符号数只表示数值大小,常用于表示无正负概念的数、代码和存储器的地址有符号数具有正负的概念,用“0”表示或者“1”放到表示数值大小的数码序列最前面来表示正负数。1.2二进制数在计算机中的应用1.2.4机器数的原码、反码与补码计算机中带符号数有三种表示方法:原码、反码和补码。在这三种机器数的表示形式中,符号位的规定相同,仅是数值部分的表示形式不同。1、原码正数的符号位用“0”表示,负数的符号位用“1”表示,其余数字位表示数值本身。例如,x1=+1101101[x1]原=01101101 x2=-1101101[x2]原=111011011.2二进制数在计算机中的应用对于数0,可以认为它是+0,也可以认为它是-0。因此,0在原码表示中有下列两种形式:

[+0]原=00000000[-0]原=10000000由此可见,数0的原码表示不是唯一的。对于8位二进制数(称为一个字节)来说,原码可表示的数的范围是-127~+127。1.2二进制数在计算机中的应用2、反码正数的反码和正数的原码相同。负数的反码其符号位为1,其余各位逐位取反,即0变为1,1变为0。例如,

x1=+1101101[x1]原=01101101[x1]反=01101101 x2=-1101101[x2]原=11101101 [x2]反=100100101.2二进制数在计算机中的应用当x=±0时,[x]反也有两种表示形式即:

[+0000000]反=00000000 [-0000000]反=11111111所以,在反码表示中.“0”的表示也不是唯一的。8位二进制数反码所能表示的数的范围是-127~+127。1.2二进制数在计算机中的应用3、补码在计算机系统中,数值一律用补码来表示和存储。原因在于,使用补码,可以将符号位和数值域统一处理;同时,加法和减法也可以统一处理。

正数的补码与正数的原码相同,负数的补码等于负数的反码加1。(即符号位不变,数值位取反,后整体在+1)如何求补码的原码:即再对补码求一次补码就还原成原码。例如:

x1=+1101101[x1]原=01101101[x1]反=01101101 [x1]补=01101101 x2=-1101101 [x2]原=11101101 [x2]反=10010010[x2]补=100100111.2二进制数在计算机中的应用采用补码表示,可以把减法运算变成加法运算。但要注意,在求和的计算中,需要将运算结果产生的进位丢掉,才能得到正确的结果,其结果亦为补码表示。例如,21-15=21+[-15]补

当数用补码表示时,无论是加法还是减法运算都可采用加法运算,而且数0的表示是唯一的。因此,在微机中普遍用补码来表示带符号的数。8位二进制数补码所能表示的数的范围是-128~+127。1.2二进制数在计算机中的应用1、

正数有原码=反码=补码2、负数的原码、反码、补码各不相同,但符号位一定为1.1.2二进制数在计算机中的应用1.2二进制数在计算机中的应用求-100的补码+100=64H=01100100B-100=11100100B10011011B10011100B补码的概念:X和y的和得到一个最小进位,则称x和y互为补数。该最小进位值称为“模”。1.2二进制数在计算机中的应用十进制中:9+1=10

(对一位十进制数而言,1和9互补)9-1=9+(1)补

=9+9=18,丢弃模10之后得到8十六进制中:[+100]补=64H[-100]补=9CH[+100]补+[-100]补=64H+9CH=100H1.2二进制数在计算机中的应用如何求某一数的补码方法1:[-100]补=100H-[+100]补=100H-64H=9CH补码2:[-100]补=256-100=156D=9CH1.2二进制数在计算机中的应用1.2二进制数在计算机中的应用1.2二进制数在计算机中的应用1.2二进制数在计算机中的应用1.2.5二进制数的运算1、二进制算术运算加、减、乘、除2、二进制逻辑运算

与、或、非、异或1.2二进制数在计算机中的应用特别注意:上述二进制的原补码运算都是基于单字节的8位数运算。如果C语言中2或4个字节的数一起运算时,怎么办?

inta=-5;charb=-5;它们的原补码怎样表示?

intc=a+b;(涉及到数据类型转化,字节位数要按最高字节数量补齐)

[a]原=[1000000000000101]

[b]原=[10000101]不对![b]原=[1000000000000101]正确

1.3.1十六进制数与十进制数为了区别不同的数制,通常在数字后面加一个后缀(B或H);B(binary)表示二进制;H(Hexadecimal)表示十六进制;例如,10101010B为二进制数,8FH为十六进制数。1.3程序设计常用进制数1.3程序设计常用进制数1.3.2数制转换*不同数制只是描述数的不同方式。同一个数可以用不同的进位制来表示,它们可以相互转换。应该保证转换前、后所表示的数值是相等的,或者在满足规定的误差范围内近似相等。

十进制二进制十六进制012345678910111213141500000001001000110100010101100111100010011010101111001101111011110123456789ABCDEF十进制、二进制、十六进制对照表1.>十进制转换为二进制a.十进制整数转化为二进制整数转换方法:除基取余。即不断地用2去除待转换的十进制数,将每次所得的余数(0或1)依次记为K0、K1、…,直到商等于0为止,最后一次余数记作Kn-l,则Kn-1Kn-2…K1K0为转换后的二进制数。例:将(11)10转换为二进制1.3程序设计常用进制数b.十进制小数转换为二进制小数转换方法:乘基取整。就是不断地用2去乘要转换的十进制小数,将每次所得的整数(0或者1),依次记作K-1、K-2、…。若乘积的小数部分最后为0,那么最后一次乘积的整数部分记为K-m;若乘积的小数部分最后不可能为0,则只要换算到满足所需要的精度为止。例:将(0.75)10转化为二进制数例:将(0.33)10转化为8位小数的二进制数1.3程序设计常用进制数c.带小数的十进制数转换为二进制数一个带小数的十进制致转换为二进制数时.先分别将其整数部分和小数部分转化为相对应的二进制数,然后用小数点将两部分连接起来,即可得转换的结果。例:将(11.75)10转换为二进制数1.3程序设计常用进制数2.>二进制数、十六进制数转换为十进制数转换方法:把二进制(或十六进制)数按权展开、利用十进制数运算法则求和.即可得相应的十进制数。例:将二进制数11101110.01转换为十进制数。例:将十六进制数FA转换为十进制数1.3程序设计常用进制数3.>二进制、十六进制之间的相互转换1位十六进制数需要4位二进制数表示,或者说1位十六进制数可以表示成4位二进制数。因此,利用这种对应关系可直接实现二进制和十六进制之间的相互转换。例:将十六进制数8E转换为二进制数。例:将二进制数10110101转换为十六进制数。1.3程序设计常用进制数编码:是指按一定规则组合成的若干位二进制代码。一、二—十进制编码在计算机输入和输出数据时,通常采用十进制数表示.这样的十进制数是用二进制编码表示的。1位十进制数用4位二进制编码来表示的方法很多,最常用的是8421BCD码,简称BCD码,用二进制数的0000一1001来分别表示十进制数的0-9。BCD码有两种形式:压缩BCD码和非压缩BCD码。

1.4BCD码与ASCII码1.压缩BCD码压缩ECD码用4位二进制数表示1位十进制数,一个字节表示2位十进制数。例如10010111表示十进制数97。2.非压缩BCD码非压缩BCD码用8位二进制数表示1位十进制数,高4位总是0000,低4位的0000-1001表示0-9。例如,00001001表示十进制数9。1.4BCD码与ASCII码3.BCD码的加减计算对于一字节的BCD码的加法,若低4位相加后的结果大于9或者向高4位发生了进位,则将其结果加6进行修正,高位亦然;对于一字节的BCD码的减法,若低4位相减的结果大于9或是向高4位发生了借位,则将其结果减6进行修正,高位亦然。1.4BCD码与ASCII码1.4BCD码与ASCII码二、字母和符号的编码在计算机中,字母和符号也是按特定的二进制编码表示的,微型机里普遍采用ASCII码。DELo←O?/USSI1111F~n↑N>·RSSO1110E}m]M=

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论