网站大量收购独家精品文档,联系QQ:2885784924

计算机系统导论 课件 第二章高级语言程序.ppt

计算机系统导论 课件 第二章高级语言程序.ppt

  1. 1、本文档共27页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

*

第二章高级语言程序

变量和常量及其类型

表达式及运算符

控制结构和函数调用高级语言程序主要教学目标了解C语言发展概述,以及相应的C语言标准规范了解C程序中变量、常量的定义和引用之间的关系理解C程序中变量、常量的类型与机器级表示之间的关系理解编译器对C语言表达式的转换处理任务理解编译器对控制结构语句和函数调用的基本处理任务理解变量的作用域与变量的存储分配之间的关系从C程序的基本要素出发,引出后续各个章节的内容高级语言程序本章内容包括:变量和常量及其类型C程序中的变量及其类型C程序中的常量及其类型表达式及运算符表达式中的运算符C语言中的基本运算控制结构和函数调用C语言中的控制结构语句C语言中的函数调用变量的作用域与存储分配C标准I/O库函数/*---sum.c---*/intsum(inta[],unsignedlen){ int i,sum=0; for (i=0;i=len–1;i++) sum+=a[i]; returnsum;}/*---main.c---*/intmain(){ inta[1]={100}; intresult;result=sum(a,1);printf(“%d”,result);}常数表达式和运算符变量循环结构语句函数调用标准I/O库函数调用C语言概述本课程基于“IA-32/x86-64+Linux+GCC+C语言”介绍计算机系统基础内容高级语言程序:C语言程序机器级代码:IA-32/x86-64架构操作系统:Linux编译器及开发工具:GCCC语言(起源于贝尔实验室)1970年,肯·汤普森用B语言写了第一个UNIX操作系统1972年,丹尼斯·里奇在B语言基础上设计了C语言1983年,加尼·斯楚士舒普把C语言又扩展成C++C标准:ANSIC(ISOC90)、ISOC99C语言特点简单灵活、抽象程度低(接近硬件)、安全性和规范性较弱C语言中的变量变量的特点表示一个可变化的“值”——必须分配一个存储空间只能有一个唯一的“定义”——所在存储空间的首地址应先定义后引用——可在表达式中或赋值语句等号左边引用变量的定义必须给出数据类型和名字,必要时给出存储类型(如static)变量定义所在位置和存储类型不同,其作用域和生存期不同编译器根据不同的作用域将变量分配在不同的存储空间中变量的数据类型简单数据类型有无符号整型、带符号整型、浮点类型、指针型C语言标准规定了每种数据类型的最小取值范围复杂数据类型有数组(array)、结构(struct)、联合(union)等关于变量的作用域及所分配存储空间的相关内容参见第6章C语言中的常量三种类型的常量字面量(字面值)#define定义的常量符号const定义的常量名常量的定义#define常量:随场景变化,但确定场景下不变(如RADIUS)const常量:任何场景下都不变(如圆周率pi)字面量:可带小数点和字母E、前缀0x、后缀U或u等(如2.85E10、0x12BF、12345、12345U、0x3F8Cu)字面量的处理编译器需将字面量转换为二进制表示形式编译器需根据C语言标准确定字面量的数据类型在不同的C语言标准中,同一字面量数据类型可能不同(见3.2.3)关于不同类型的变量和常量的二进制表示在第3章介绍1#includestdio.h2#defineRADIUS20.03intmain(){4constdoublepi=3.14159;5doublecircum=2*pi*RADIUS;6 ……7}C语言中的表达式表达式用于描述对变量和常量的各种组合运算表达式由运算符连接变量和常量而组成表达式中可嵌套表达式表达式中的运算符与运算算术运算符、按位运算符、逻辑运算符、关系运算符、自增/自减运算符、取地址/取内容运算符以及各种括号等运算符之间有特定的优先级和结合顺序编译器根据运算符优先级和结合顺序对表达式进行处理,生成对应的机器级代码(指令序列)每个表达式对应一个指令执行序列,其中多为运算类指令运算类指令在CPU中执行时,在特定的运算部件中进行运算关于不同类型数据的各类运算方法和运算部件在第4章介绍关于运算类指令将在第5章介绍C语言程序中的运算算术运算(最基本的运算)无符号数、带符号整数、浮点数的+、-、*、/运算等按位运算用途对位串实现“掩码”(mask)操作或相应的其

您可能关注的文档

文档评论(0)

lai + 关注
实名认证
内容提供者

精品资料

版权声明书
用户编号:7040145050000060

1亿VIP精品文档

相关文档