第二讲 C语言基础知识.ppt_第1页
第二讲 C语言基础知识.ppt_第2页
第二讲 C语言基础知识.ppt_第3页
第二讲 C语言基础知识.ppt_第4页
第二讲 C语言基础知识.ppt_第5页
已阅读5页,还剩37页未读 继续免费阅读

下载本文档

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

文档简介

09:09:04,1,2020/6/7,第二讲C语言基础知识,计算机中的数据描述数字逻辑浅析C语言简介,09:09:04,2,2020/6/7,2.1数字描述,(1)二进制,比特(BIT)二进制的每一个0或1是组成二进制的最小单位,称为一个比特(bit)。字长在同一时间中处理二进制数的位数叫字长。通常称处理字长为8位数据的CPU叫8位CPU,32位CPU就是在同一时间内处理字长为32位的二进制数据。字节(BYTE)字节是指一小组相邻的二进制数码。通常是8位作为一个字节。它是构成信息的一个小单位,并作为一个整体来参加操作。,09:09:04,3,2020/6/7,2.1数字描述,字(WORD)由若干个字节构成,字的位数叫做字长,不同档次的机器有不同的字长。例如一台8位机,它的1个字就等于1个字节,字长为8位。如果是一台16位机,那么,它的1个字就由2个字节构成,字长为16位。字是计算机进行数据处理和运算的单位。双字(DWORD)1双字=2字,09:09:04,4,2020/6/7,2.1数字描述,在微型计算机中,通常用字节为单位来表示存储器的存储容量。主要容量单位如下:,1KB=1024字节1MB=1024KB1GB=1024MB1TB=1024GB1PB=1024TB,09:09:04,5,2020/6/7,2.1数字描述,(2)自然数描述,一连串“1”和“0”组成的二进制数,“逢二进一”,09:09:04,6,2020/6/7,2.1数字描述,十进制转二进制,“除2取余,逆序排列”,09:09:04,7,2020/6/7,2.1数字描述,二进制转十进制,例:将110010转为十进制解:110010=125+124+121=32+16+2=50答:110010的十进制是50。例:将110010转为十进制解:1011001=126+124+123+1=64+16+8+1=89答:110010的十进制是50。,09:09:04,8,2020/6/7,2.1数字描述,(3)整数数据,机器数与真值,数据是带符号的,在计算机用一个数的最高位存放符号,正数为0,负数为1。例如:N1=+1011011N2=-1011011在计算机中,用“0”代替“+”,用“1”代替“-”,则变为N1=01011011N2=11011011将已经数值化的带符号数成为机器数。那么,这里的01011011和11011011就是机器数,。,带符号位的机器数对应的真正数值称为机器数的真值,09:09:04,9,2020/6/7,2.1数字描述-整数数据,原码,符号位加上真值的绝对值,+1原=00000001-1原=10000001第一位是符号位,8位二进制数的取值范围就是:11111111,01111111即-127,127,09:09:04,10,2020/6/7,2.1数字描述-整数数据,2.反码,正数的反码是其本身负数的反码是在其原码的基础上,符号位不变,其余各个位取反。,+1=00000001原=00000001反-1=10000001原=11111110反,取反:0变1,1变0,09:09:04,11,2020/6/7,2.1数字描述-整数数据,=00000001原+10000001原=00000001反+11111110反=11111111反=10000000原=-0,2.反码,1-1=1+(-1),09:09:04,12,2020/6/7,2.1数字描述-整数数据,3.补码,正数的补码就是其本身负数的补码是在其原码的基础上,符号位不变,其余各位取反,最后+1.(即在反码的基础上+1),+1=00000001原=00000001反=00000001补-1=10000001原=11111110反=11111111补,09:09:04,13,2020/6/7,2.1数字描述-整数数据,3.补码,1-1=1+(-1)=00000001原+10000001原=00000001补+11111111补=00000000补=00000000原,09:09:04,14,2020/6/7,2.1数字描述-整数数据,3.补码,(-1)+(-127)=10000001原+11111111原=11111111补+10000001补=10000000补,补码用10000000表示-128,09:09:04,15,2020/6/7,2.1数字描述-整数数据,8位补码表示的范围为-128,127,即-27,27-1,16位补码表示范围是:-215,215-1,3.补码,32位补码表示范围是:-231,231-1,09:09:04,16,2020/6/7,2.1数字描述,(4)算述运算,二进制加法:就是逢二进一。,例:1+1=?;解:1+1=10答:1+1=10,例:3+3=?解:11+11=110答:3+3=11+11=110,二进制减法:在二进制的减法中,只要先把减数通过补码方法转换成负数,然后两者相加即可。,09:09:04,17,2020/6/7,2.1数字描述-算数运算,1)符号扩展,符号扩展的方法是正数前面添加0,在负数前面添加1。,+1=00000001补=0000000000000001补,-1=11111111补=1111111111111111补,真值8位16位,09:09:04,18,2020/6/7,2.1数字描述-算数运算,2)溢出,计算机中能够表达的数目是有限的,运算结果超出了计算机所能表达的范围,于是出现了计算错误,这就是溢出。,例:5位二进制01001+01011=10100结果得到的是一个负数,这就是溢出错误。,例:5位二进制10100+11010=01110两个负数相加变成了正数,这显然是错误的。,09:09:04,19,2020/6/7,2.1数字描述,(5)逻辑运算,“与”运算“与”运算(AND)的运算规则为两个操作数为1时结果为1,否则为0。AANDB0AND0=00AND1=01AND0=01AND1=1,09:09:04,20,2020/6/7,2.1数字描述-逻辑运算,“或”运算“或”运算(OR)的运算规则为两个操作数中任意一个为1时结果为1,否则为0AORB0OR0=00OR1=11OR0=11OR1=1,09:09:04,21,2020/6/7,2.1数字描述-逻辑运算,“非”运算“非”运算(NOT)为一元逻辑运算,对操作数直接取反。ANOTNOT0=1NOT1=0,09:09:04,22,2020/6/7,2.1数字描述-逻辑运算,“异或”运算(Exclusive-OR)“异或”运算为两元逻辑运算,如果两个操作数不同时结果为1,相同时结果为0AORB0OR0=00OR1=11OR0=11OR1=0,09:09:04,23,2020/6/7,2.1数字描述,(6)实数,定点数:是指小数点准确固定在数据某个位置上的数浮点数:小数点位置浮动的数,09:09:04,24,2020/6/7,2.1数字描述-实数,浮点数,IEEE75432位单精度浮点数国际标准,09:09:04,25,2020/6/7,2.1数字描述-实数,00111101100000000000000000000000,浮点数,S=0e=01111011B=123Dm=0,浮点数只能以一定精度表示一个实数,09:09:04,26,2020/6/7,2.1数字描述,(7)字符,英文字符编码:ASCII-7位中文字符:GB23212码-16位国际统一编码:Unicode码-16为,计算机中,各种语言文字、数字、字母、标点符号以及其他一些特殊符号,统称为字符。编码:字符的二进制表示,09:09:04,27,2020/6/7,2.1数字描述-字符,ASCII:AmericanStandardCodeforInformationInterchange,美国信息互换标准代码,ASCII编码规定:031及127(共33个)是控制字符或通信专用字符(其余为可显示字符);32126(共95个)是字符(32是空格),其中4857为0到9十个阿拉伯数字;6590为26个大写英文字母,97122号为26个小写英文字母,其余为一些标点符号、运算符号等。,09:09:04,28,2020/6/7,2.1数字描述-字符,GB2312:信息交换用汉字编码字符集,基本集共收入汉字6763个和非汉字图形字符682个。整个字符集分成94个区,每区有94个位。每个区位上只有一个字符,因此可用所在的区和位来对汉字进行编码,称为区位码。,09:09:04,29,2020/6/7,2.1数字描述-字符,Unicode:全球所有文字统一编码,Unicode(统一码、万国码、单一码)是一种在计算机上使用的字符编码。它为每种语言中的每个字符设定了统一并且唯一的二进制编码,以满足跨语言、跨平台进行文本转换、处理的要求。1990年开始研发,1994年正式公布。随着计算机工作能力的增强,Unicode也在面世以来的十多年里得到普及。在网络、Windows系统和很多大型软件中得到应用,09:09:04,30,2020/6/7,2.1数字描述,(8)十六进制计数法,分别用0123456789ABCDEF这16个字符来代替十进制的0-9,10-15,0011110101101110可以表示成3D6E,09:09:04,31,2020/6/7,2.2数字逻辑浅析,(1)基本器件,晶体管,MOS管,1平方厘米大小的硅片上可以集成数千万个晶体管或MOS管,09:09:04,32,2020/6/7,2.2数字逻辑浅析,(2)逻辑门电路,“非门”(ANDGate)“或门”(ORGate)“非门”(NOTGate),09:09:04,33,2020/6/7,2.2数字逻辑浅析,(3)逻辑组合,译码器多路复用器全加器,09:09:04,34,2020/6/7,2.2数字逻辑浅析,(4)存储单元,R-S锁存器门控D锁存器寄存器,09:09:04,35,2020/6/7,2.2数字逻辑浅析,(5)内存的概念,内存是计算机中很重要的一个部件,它是存储程序以及数据的地方。,内存其实就是一个电路板,这个电路板可以存储程序和数据,而且可以快速地写入和读取。,09:09:04,36,2020/6/7,2.2数字逻辑浅析,(6)时序电路,输出跟时间和顺序有关的电子电路,时序逻辑电路主要是用于实现有限状态机。有限状态机简单地将就是输出的结果由前一个结果(或称为前一种状态)和输入的数据决定的。,09:09:04,37,2020/6/7,2.3C语言简介,最早的结构化编程语言介于高级语言和汇编语言之间目前控制领域应用最广的语言,09:09:04,38,2020/6/7,2.3C语言简介-语言的特点,(1)语言简洁、紧凑,使用方便、灵活。(32个关键字,9种控制语句)(2)运算符丰富。(34种运算符)(3)数据类型丰富。(指针)(4)完全结构化和模块化的语言。(函数)(5)语法限制不太严格,程序设计自由度大。(6)兼有高级和低级语言的特点。(7)目标代码质量高,程序执行效率高。(8)程序可移植性好(与汇编语言比)。,09:09:04,39,2020/6/7,2.3C语言简介-C语言程序的组成和结构,C程序:(1)C程序是由函数构成的。这使得程序容易实现模块化。(2)一个函数由两部分组成:函数的首部:例1.3中的max函数首部intmax(intx,inty)函数体:花括号内的部分。若一个函数有多个花括号,则最外层的一对花括号为函数体的范围。函数体包括两部分:声明部分:inta,b,c;可缺省执行部分:由若干个语句组成。可缺省,09:09:04,40,2020/6/7,注意:函数的声明部分和执行部分都可缺省,例如:voiddump()这是一个空函数,什么也不做,但是合法的函数。,2.3C语言简介-C语言程序的组成和结构,09:09:04,41,2020/6/7,小结:(3)C程

温馨提示

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

评论

0/150

提交评论