C之基本数据类型运算符及表达式_第1页
C之基本数据类型运算符及表达式_第2页
C之基本数据类型运算符及表达式_第3页
C之基本数据类型运算符及表达式_第4页
C之基本数据类型运算符及表达式_第5页
已阅读5页,还剩33页未读 继续免费阅读

下载本文档

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

文档简介

1、2022-5-7Hongyan Nan,HPU2重点、难点重点、难点本章重点:本章重点:C语言的基本数据类型语言的基本数据类型 变量的定义、赋值、初始化以及使用方法变量的定义、赋值、初始化以及使用方法基本运算符的运算规则及优先级别基本运算符的运算规则及优先级别表达式的构成规则和计算表达式的构成规则和计算数据类型转换的意义和实质数据类型转换的意义和实质 本章难点:本章难点:数据类型的作用及注意事项数据类型的作用及注意事项自增、自减运算符的使用自增、自减运算符的使用运算符优先级别运算符优先级别混合表达式运算混合表达式运算类型转换及转换过程中出现的误差类型转换及转换过程中出现的误差 2022-5-7

2、Hongyan Nan,HPU3数据类型是指数据的内部表现形式,是数据类型是指数据的内部表现形式,是进行进行C语言程序设计的基础。语言程序设计的基础。C语言规定,在语言规定,在C程序中使用的每一个数程序中使用的每一个数据都属于惟一的一种数据类型,没有无据都属于惟一的一种数据类型,没有无类型的数据,一个数据也不可能同时属类型的数据,一个数据也不可能同时属于多种数据类型。于多种数据类型。2.1 C语言的数据类型语言的数据类型 2022-5-7Hongyan Nan,HPU4基本类型基本类型构造类型构造类型实型实型整型整型短整型短整型长整型长整型单精度型单精度型整型整型双精度型双精度型枚举类型枚举类

3、型结构体类型结构体类型数组类型数组类型共用体类型共用体类型字符类型字符类型长双精度型长双精度型数据类型数据类型数据类型决定:数据类型决定:1. 数据占内存字节数数据占内存字节数2. 数据取值范围数据取值范围3. 其上可进行的操作其上可进行的操作例例 float a,b,c; c=a%b; illegal use of floating point in function main 类型类型符号符号关键字关键字所占位数所占位数数的表示范围数的表示范围整型整型有有(signed)int32-231(231-1)(signed)short16-215(215-1)(signed)long32-231

4、(231-1)无无unsigned int320(232-1)unsigned short160(216-1)unsigned long320(232-1)实型实型有有float32-3.4e383.4e38double64-1.7e3081.7e3082022-5-7Hongyan Nan,HPU52.2 常量和变量常量和变量2022-5-7Hongyan Nan,HPU62.2.1 常量常量数值常量数值常量符号常量符号常量整型常量:整型常量:12、0、-3;实型常量:实型常量:4.6、-1.23;即用一个即用一个标识符标识符代表的一个常量代表的一个常量字符常量:字符常量:a、b字符串常量:

5、字符串常量:a、dbp字符型常量字符型常量 标识符是一种字符序列,用于表示某对象的名字,如变量名、函数名等。 C语言的标识符可以分为关键字、预定义标识符和用户标识符三类。关键字是由关键字是由C C语言规定的具有特定含义的标识符,也称为保留字。语言规定的具有特定含义的标识符,也称为保留字。关键字均为小写,如关键字均为小写,如intint、whilewhile等。等。预定义标识符在预定义标识符在C C语言中有特定的含义,如语言中有特定的含义,如printfprintf、includeinclude等;等;用户标识符是由用户根据需要自定义的标识符。用户标识符是由用户根据需要自定义的标识符。用户标识符

6、命名规则:用户标识符命名规则: 组成:英文字母、数字、下划线组成:英文字母、数字、下划线 开头:英文字母、下划线开头:英文字母、下划线 长度长度:3232字符(字符(Turbo CTurbo C)注意:注意:区分大小写;区分大小写; 不许用关键字。不许用关键字。建议:建议: 见名知意,以便记忆、阅读;见名知意,以便记忆、阅读; 不与预定义标识符同名,否则该预定义标识符将失去原有含义,可能不与预定义标识符同名,否则该预定义标识符将失去原有含义,可能引发一些运行时的错误,而系统不报错。引发一些运行时的错误,而系统不报错。例例:判断下列标识符号合法性判断下列标识符号合法性sum Sum M.D.Jo

7、hn day Date 3daysstudent_name #33 lotus_1_2_3 char ab _above $123M.D.John3days#33char$123ab2022-5-7Hongyan Nan,HPU7#include #define PI 3.14159main()printf(area=%fn,PI*5.3 *5.3); /*输出圆面积输出圆面积*/printf(circumference=%fn,2*PI*5.3); /*输出圆周长输出圆周长*/例例2.1 符号常量的使用符号常量的使用运行结果:运行结果:area=88.247263circumference=

8、33.300854整型常量整型常量符号常量实型常量实型常量2022-5-7Hongyan Nan,HPU8符号常量符号常量 也称宏常量,用简单符号代表宏体部份内容,必须也称宏常量,用简单符号代表宏体部份内容,必须后使用。定义由后使用。定义由C语言中的预处理命令来执行,格式:语言中的预处理命令来执行,格式: #define 符号常量符号常量 常量常量 符号常量定义后,凡在源程序中符号常量定义后,凡在源程序中的的外外使用该符号常量时,使用该符号常量时,都用其后指定的常量来替换。都用其后指定的常量来替换。注意:注意:该定义不是该定义不是C语句,不语句,不能在行末加分号,否则会连分号一起置换。能在行末

9、加分号,否则会连分号一起置换。 符号常量应遵循标识符的命名规则,习惯上用大写字母表符号常量应遵循标识符的命名规则,习惯上用大写字母表示。符号常量的值在其作用域内示。符号常量的值在其作用域内改变,改变,也不能也不能再被赋值。再被赋值。 规范程序中规范程序中使用符号常量,一是直观、可多次使用,使用符号常量,一是直观、可多次使用,二是阅读、修改程序方便。二是阅读、修改程序方便。2022-5-7Hongyan Nan,HPU92.2.2 变量变量v 概念:程序执行期间值可以改变的量概念:程序执行期间值可以改变的量v 变量定义的位置变量定义的位置一般一般放在函数开头,其格式:放在函数开头,其格式:例:例

10、:int a,b,c; float data;决定分配字节数决定分配字节数和数的表示范围和数的表示范围合法用户标识符合法用户标识符v 变量初始化:变量初始化: 定义时赋初值定义时赋初值v 变量须变量须先定义先定义、后使用、后使用例例: int a=2,b,c=4; float data=3.67; char ch=A; int x=1,y=1,z=1; int x=y=z=1; ( )编译程序根据变量定义为其分配指定字节的内存单元.地址short a=1,b=-3,c;abc2字节字节2字节字节2字节字节地址地址.内存1-3随机数例例1 int student; stadent=19; Und

11、efined symbol stadent in function main main() int a,b=2; float data; a=1; data=(a+b)*1.2; printf(data=%fn,data);定义变量可执行语句变量定义语句可放在函数外,也变量定义语句可放在函数外,也可放在函数或复合语句内可放在函数或复合语句内2022-5-7Hongyan Nan,HPU10例例 12与与12L例例 30000 为为short 型型 65536 为为long int 型型问题:问题:0123 =( )100 x123=( )100Xff =( )102.3.1整型常量整型常量(整

12、数整数)三种形式:三种形式: 十进制整数:如十进制整数:如 123,-456,0 八进制整数:由数字八进制整数:由数字0开头,后跟开头,后跟07。如。如0123,011 十六进制整数:由十六进制整数:由0 x开头,后跟开头,后跟09,af或或AF。如。如0 x123,0Xff。注意注意0 x 中的中的0是数字。是数字。2.3 整型数据整型数据整型常量类型的判定整型常量类型的判定 根据其值所在范围确定其数据类型根据其值所在范围确定其数据类型 在在整常量后加字母整常量后加字母l或或L的的是是long int 型常量型常量832912552022-5-7Hongyan Nan,HPU112.3.2

13、整型变量整型变量整型类型符整型类型符占用字节数占用字节数数值范围数值范围signed int4-214748364822147483647 即即-231(231-1)signed short int2-3276832767 即即-215(215-1)signed long int4-214748364822147483647 即即-231(231-1)unsigned int404294967295 即即0(232-1)unsigned short int2065535 即即0(216-1)unsigned long int404294967295 即即0(232-1)2022-5-7Hong

14、yan Nan,HPU12整型数据在内存中的存放形式整型数据在内存中的存放形式对于有符号整型数来说,存储单元的最高对于有符号整型数来说,存储单元的最高位是符号位,位是符号位,0表示正数,表示正数,1表示负数,其余为表示负数,其余为数值位。数值位。无符号整型数没有符号位,不能存储负数,无符号整型数没有符号位,不能存储负数,其存储单元全部二进制位都用于存放数值。其存储单元全部二进制位都用于存放数值。符号位符号位signed intsigned intunsigned intunsigned int0 1 1 1 1 11 1 1 1 1 1 11 1 1 1 1 11 1 1 1 1 1 1202

15、2-5-7Hongyan Nan,HPU13 1 1111 11110111 1 1111 11111000正数的补码=正数的原码 负数的补码和原码按以下规则相互转换: 符号位不变,数值位各位取反,未位加1。In fact整型数据是以补码的形式来存储的整型数据是以补码的形式来存储的例:例:int a=8,b=-8; 0 0000 00001000 1 0000 00001000 0 0000 00001000原码原码补码补码符号位符号位数值位数值位a=810=10002b=- 810=-10002真值真值2022-5-7Hongyan Nan,HPU14整型数据的溢出整型数据的溢出在在VC中一

16、个中一个short int型变量的最大允许值为型变量的最大允许值为32767,如果再加如果再加1,会出现什么情况,会出现什么情况例例2.2 整型数据的溢出整型数据的溢出 main( ) short a,b; a=32767; b=a+1; printf(%d,%d,a,b); ab1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 00 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12022-5-7Hongyan Nan,HPU15例例: : #include #include main() short a ; clrscr( ); printf(Input:); scan

17、f(%d,&a); printf(a=%dn,a); 运行结果运行结果: Input:12345 a=12345 Input:1234567 a= -10617 Why?!12345的补码是的补码是 00110000001110011234567的补码是的补码是 100101101011010000111 截去左边多余部份后截去左边多余部份后原码原码为为 1010100101111001(-10617)2022-5-7Hongyan Nan,HPU162.4 实型数据实型数据2.3.1 实型常量实型常量(实数或浮点数实数或浮点数) 两种形式:两种形式: 小数形式:如:小数形式:如:25

18、.0、5.789、0.13、300.、-267.8230 指数形式:由尾数、阶码标志指数形式:由尾数、阶码标志e或或E以及阶码以及阶码(指数指数)组成。组成。如:如: 2.1E5(2.1105)、-2.8E-2 (-2.810-2)实型常量的类型实型常量的类型 默认为默认为double型型 在在实型常量后加字母实型常量后加字母f或或F,认为它是认为它是float型型尾数的位数决定数的精度尾数的位数决定数的精度阶码的位数决定数的阶码的位数决定数的范围范围注:注:e或或E之前必须有数字,之前必须有数字,且且之之后后必须为整数必须为整数2022-5-7Hongyan Nan,HPU172.4.2 实

19、型变量实型变量例例 float a;a=111111.111; /* a=111111.1*/double b;b=111111.111; /* b=111111.111*/float:占占4字节,提供字节,提供7位有效数字位有效数字double:占占8字节,提供字节,提供1516位有效数字位有效数字类型标识符类型标识符比特数比特数有效数字有效数字数的范围数的范围float327-3.4E+38 3.4E+38double6416-1.7E+308 1.7E+308long double6416-1.7E+308 1.7E+3082022-5-7Hongyan Nan,HPU18实型数据在内存

20、中的存放形式实型数据在内存中的存放形式实型变量是按照指数形式存储的。系实型变量是按照指数形式存储的。系统将实型数据分为小数部分和指数部分,统将实型数据分为小数部分和指数部分,分别存放。分别存放。例:例:31.41592022-5-7Hongyan Nan,HPU19实型变量的舍入误差实型变量的舍入误差main() float a,c; double b,d; a=123456.789e5; b=123456789111111.789 ; d=123456.789e5; c=a+20; printf(a=%f,b=%fnc=%f,d=%fn, a,b,c,d); 运行结果运行结果:a=12345

21、678848.000000,b=123456789111111.781000c=12345678848.000000,d=12345678900.0000002022-5-7Hongyan Nan,HPU20如如 a A ? n 101如如 A65,a97 048,n10转义字符转义字符含义含义nvradddtbfxhh转义字符转义字符含义含义换行换行垂直制表垂直制表回车回车响铃响铃单引号单引号3位位8进制数代表的字符进制数代表的字符水平制表水平制表退格退格换页换页反斜线反斜线双引号双引号2位位16进制数代表的字符进制数代表的字符转义字符及其含义转义字符及其含义2.5 字符型数据字符型数据2.

22、5.1字符常量字符常量:用:用单单引号括起来的引号括起来的单个单个字符或字符或转义转义字符字符字符常量的字符常量的值值:该字符的:该字符的ASCIIASCII码码值值转义字符转义字符:反斜线后面跟一个字符或一个代码值表示:反斜线后面跟一个字符或一个代码值表示例例: : main() printf(054n); printf(ntbab); printf(n); printf(x56cta);如如: :A-101-x41-65运行结果:运行结果:, abUc a运行结果:运行结果:A B CI say:How are you?C ProgramTurbo C例例main() printf(101

23、 x42 Cn); printf(I say:How are you?n); printf(C Programn); printf(Turbo C);2022-5-7Hongyan Nan,HPU21字符串常量字符串常量字符串常量是由一对双引号括起的字符序列字符串常量是由一对双引号括起的字符序列转义字符也可以出现在字符串中转义字符也可以出现在字符串中如:如:ABCD、101102x43x44、ABCD如:如:CHINA、C program、12365478表示:表示:ABCD、ABCD、 ABCD存储:存储:每个字符串尾自动加一个每个字符串尾自动加一个0 作为字符串结束标志作为字符串结束标志h

24、 e l l o 0例例:字符串字符串hello在内存中在内存中字符常量与字符串常量不同字符常量与字符串常量不同a a 0例例 aa2022-5-7Hongyan Nan,HPU222.5.2 字符变量字符变量字符变量用于存放单个字符常量,用关键字字符变量用于存放单个字符常量,用关键字char来定义来定义char与int数据间可进行算术运算没有字符串变量,用字符数组存放例例 a=D; /* a=68; */ x=A+5; /* x=65+5; */ s=!+G /* s=33+71;*/例例: char c1=x,c2=y,c3; char optr;字符是以字符是以ASCII码的形式存放,字

25、符数据与码的形式存放,字符数据与整型数据通用整型数据通用在格式化输出时,允许把字符变量按整型变量输出,也允许把整型变量按字符变量输出main() char a=97,b=98; printf(%c,%cn%d,%dn,a,b,a,b);运行结果运行结果:a,b97,982022-5-7Hongyan Nan,HPU23 运算是对数据的处理操作,参加运算的数据称运算是对数据的处理操作,参加运算的数据称为运算对象为运算对象(或或运算量运算量、操作数、操作数),运算对象可,运算对象可以是常量、变量、函数或表达式。以是常量、变量、函数或表达式。 标识运算的符号称为标识运算的符号称为运算符运算符,按运算

26、时运算量,按运算时运算量的个数分为单的个数分为单目目运算符、双目运算符、三目运运算符、双目运算符、三目运算符等几类。算符等几类。 用运算符和括号把运算量连接起来的、符合用运算符和括号把运算量连接起来的、符合C语言语法规则的式子称为语言语法规则的式子称为运算表达式运算表达式。凡是表。凡是表达式都有一个值,即运算结果。达式都有一个值,即运算结果。2.6 算术运算符与算术表达式算术运算符与算术表达式2022-5-7Hongyan Nan,HPU24学习运算符应注意:学习运算符应注意:v运算符功能运算符功能v与运算量关系与运算量关系v运算符优先级别运算符优先级别v结合方向结合方向v结果的类型结果的类型

27、 要求运算量个数要求运算量个数 要求运算量类型要求运算量类型2022-5-7Hongyan Nan,HPU252.6.1 基本算术运算符基本算术运算符对象数对象数 优先级优先级名称名称运算符运算符 运算规则运算规则运算对象运算对象结合性结合性单目单目1 1正正+ +取原值取原值整型或实型整型或实型自右向左自右向左负负- -取负值取负值双目双目2 2乘乘* *乘法乘法自左向右自左向右除除/ /除法除法模模%整除取余整除取余整型整型3 3加加+ +加法加法整型或实型整型或实型减减- -减法减法优先级:- - * * / / % + -+ -, ,优先级相同的按结合方向顺序处理2022-5-7Hon

28、gyan Nan,HPU26 求余运算符的运算量必须为整型。运算结果是两数相除求余运算符的运算量必须为整型。运算结果是两数相除后所得的余数。后所得的余数。说明说明 双目运算符的运算量的数据类型不一致时,系统会自动双目运算符的运算量的数据类型不一致时,系统会自动按转换规则按转换规则把运算符两边的类型转化为一致后,再进行把运算符两边的类型转化为一致后,再进行运算。转换由编译系统自动完成。运算。转换由编译系统自动完成。 双目除运算的结果与运算量的数据类型有关。双目除运算的结果与运算量的数据类型有关。例例 14/5 = 例例 5%(-2) = -5%2 = -1%(-10) = 5%1 = 5.5%2

29、 ( ) C语言中,所有实型数语言中,所有实型数的运算均以双精度方式的运算均以双精度方式进行。进行。例例 5/2 = -5/2.0= 2-2.521-1-102022-5-7Hongyan Nan,HPU27转换规则:自动转换和强制转换转换规则:自动转换和强制转换自动转换规则:自动转换规则: 运算转换:不同类型数据混合运算时运算转换:不同类型数据混合运算时,向高看齐向高看齐 赋值转换:把一个值赋给与其类型不同的变量时,赋值转换:把一个值赋给与其类型不同的变量时,向左看齐向左看齐 输出转换:输出时转换成指定的输出格式,输出转换:输出时转换成指定的输出格式,按规定办事按规定办事 函数调用转换:实参

30、与形参类型不一致时转换,函数调用转换:实参与形参类型不一致时转换,向前看齐向前看齐例例 main() float PI=3.14159; int s,r=6; s=r*r*PI; printf(s=%dn,s); 例例 main() float i=3,j=4; printf(%dn,sizeof(i+j); 结果为结果为8(双精度双精度)doublefloatlongunsignedchar,shortint高低必须转换必须转换运算量不同时转换运算量不同时转换2022-5-7Hongyan Nan,HPU28强制转换:强制转换: 把表达式的运算结果强制转换成类型标识符所表示的类型把表达式的运

31、算结果强制转换成类型标识符所表示的类型 转换形式为:转换形式为:(类型标识符类型标识符)(表达式表达式) 注意:无论是强制转换还是自动转换,都是为了本次运算注意:无论是强制转换还是自动转换,都是为了本次运算的需要而对变量的数据长度进行临时性转换,而不改变该的需要而对变量的数据长度进行临时性转换,而不改变该变量定义时的类型变量定义时的类型例:若例:若 int a=7; float x=2.5,y=4.7; 则则 x+a%3*(int)(x+y)%2/4 的值是什么的值是什么? 例例 main() float f=5.75; printf (int)f=%d,f=%fn,(int)f,f); 例例

32、 main() float i=3,j=4; printf(%dn,sizeof(i+j); 结果为结果为8(双精度双精度)计算类型长度运算符是计算类型长度运算符是C C语言提供用于测定某一种类型数据所占存储空语言提供用于测定某一种类型数据所占存储空间长度的单目运。间长度的单目运。 其格式:其格式:sizeof(运算对象运算对象)2.500000 (1/4为为0)2022-5-7Hongyan Nan,HPU292.6.3 自增、自减运算符自增、自减运算符自增、自增、减运算符减运算符+、-:单目运算符,右结合性单目运算符,右结合性 功能:使变量值增功能:使变量值增1 1或减或减1 1,并将结果

33、再存回原变量,并将结果再存回原变量 种类:种类:前缀:前缀:+i、-i 后缀:后缀: i+、i-k=4,j=4k=3,j=443c=20,a=4c=15,a=4若只对某变量自加若只对某变量自加/减,则结果都是使该变量自身减,则结果都是使该变量自身1;若该变量还要参加其他运算,则前缀运算是先自加若该变量还要参加其他运算,则前缀运算是先自加/减减后运算,后缀运算是先运算后自加后运算,后缀运算是先运算后自加/减。减。+、- 不能用于常量和表达式不能用于常量和表达式,如如 5+、(x+y)+C语言规定,出现多个语言规定,出现多个+、-组成运算符串时,自左组成运算符串时,自左向右取尽可能多的符号组成运算

34、符向右取尽可能多的符号组成运算符不要在一个表达式中对同一个变量进行多次自增不要在一个表达式中对同一个变量进行多次自增/减减运算,如运算,如i+*+i+i-*-i例例 j=3; k=+j; j=3; k=j+; j=3; printf(%d,+j); j=3; printf(%d,j+); a=3;b=5;c=(+a)*b; a=3;b=5;c=(a+)*b; 2022-5-7Hongyan Nan,HPU30例例2.5 自增、自减运算符的使用自增、自减运算符的使用main() int i=5,x; x=i+; /* 先把先把i的值赋给的值赋给x,然后,然后i的值加的值加1 */ printf(

35、i=%d,x=%dn,i,x); /* i的值为的值为6,x的值为的值为5*/ printf(%d ,+i); /* 先把先把i的值加的值加1,然后输出,然后输出i */ printf(%d ,-i); /* 表达式表达式-i的值为的值为6 */ printf(%d ,i-); /* 表达式表达式i+的值为的值为6 */ printf(%d ,-i+); printf(%dn,-i-);运行结果:运行结果:i=6,x=57 6 6 -5 -62022-5-7Hongyan Nan,HPU312.7 赋值运算符与赋值表达式赋值运算符与赋值表达式vv简单赋值运算符简单赋值运算符=:双目运算符,:双

36、目运算符,变量名变量名=表达式表达式 功能:把右边的数据赋给左边的变量功能:把右边的数据赋给左边的变量 右结合性,优先级仅高于逗号运算符右结合性,优先级仅高于逗号运算符vv复合赋值运算符:复合赋值运算符:+=、 -= 、*=、/=、%=、=、 &=、=、|=,双目运算符双目运算符 功能:功能: exp1=exp1 op exp2 赋值表达式:右结合性赋值表达式:右结合性例:例: a=50 /*把常量把常量50赋给变量赋给变量a */ b=a+c /*把把 a+c 中的值赋给变量中的值赋给变量b*/ a=7+1=b 不合法不合法例:例:a=b=c=9 a=(b=(c=9)例:例:a+=3

37、a=a+3 x*=y+8x=x*(y+8) x%=5x=x%5例:例: x=(a=5)+(b=8) x=5+8另:另: a=b-=c+=9 a=(b-=(c+=9)2022-5-7Hongyan Nan,HPU322.8 逗号运算符与逗号表达式逗号运算符与逗号表达式vv逗号运算符逗号运算符,:表达式:表达式1,表达式表达式2,表达式表达式n 左结合性,优先级最低左结合性,优先级最低 逗号表达式逗号表达式的值:等于表达式的值:等于表达式n的值的值例:例:a=3*5,a*4 a=3*5,a*4,a+5又:又:a=1;b=2;c=3; printf(%d,%d,%d,a,b,c); printf(%

38、d,%d,%d,(a,b,c),b,c);a=15,表达式值表达式值60a=15,表达式值表达式值201,2,33,2,3例例2.6: main() int x,a; x=(a=3,6*3); printf(a=%d,x=%dn,a,x); x=a=3,6*a; printf(a=%d,x=%dn,a,x);运行结果运行结果:a=3,x=18a=3,x=32022-5-7Hongyan Nan,HPU332.9 位运算符位运算符位运算:对运算量按二进制位运算:对运算量按二进制位位进行的运算进行的运算 运算量只能是整型或字符型数据运算量只能是整型或字符型数据 位运算是对整个二进制位运算是对整个二

39、进制位位进行操作进行操作位运算符位运算符 位逻辑运算符:位逻辑运算符:、&、| 位移位运算符:位移位运算符: 位复合赋值运算符:位复合赋值运算符:&=、|=、=、=2022-5-7Hongyan Nan,HPU34按位取反按位取反:把运算量补码的每一位取反,单目运算,:把运算量补码的每一位取反,单目运算,右结合性。右结合性。1=0 0=1按位与按位与 :双目运算,对参与运算对象的补码各对应的:双目运算,对参与运算对象的补码各对应的位进行与运算。位进行与运算。0&0=0 0&1=0 1&0=0 1&1=1按位异或按位异或 :对参与运算对象的补码各对应的位进行异:对参与运算对象的补码各对应的位进行异或运算,双目运算。或运算,双目运算。00=0 01=1 10=1 11=0按位或按位或 :对参与运算对象的补码各对应的位进行或运算,:对参与运算对象的补码各对应的位进行或运算,双目运算。双目运算。0|0=0 0|1=1 1|0=1 1|1=1位逻辑运算符位逻辑运算符例:求例:求9 9的补码:的补码:0000000000001001 按位求反:按位求反:1111111111110110 转换为原码,写成十进制,即转换为原码,写成十进制,即-10例:求例:

温馨提示

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

评论

0/150

提交评论