前言
本节内容主要讲述的是c语言中一些操作符的作用以及使用案例
一、操作符是什么?
指令系统的每一条指令都有一个操作符,它表示该指令应进行什么性质的操作。不同的指令用操作符这个字段的不同编码来表示,每一种编码代表一种指令。
操作符详解:
(1)单目操作符:只有一个操作数的操作符
除法:/
得到小数:除数与被除数中至少有一个是小数得到整数:除数与被除数必须都是整数
(2)移位操作符:
左移:<<
把a的二进制位向左移动一位: 左边移出去的丢弃,右边补0
int a = 2; 00000000 00000000 00000000 00000010
00000000 00000000 00000000 00000100
int b = a << 1; 得到b = 4
右移 <<
把a的二进制位向右移动一位
右移分为两种:算术右移:右边丢弃,左边补原符号位 正数补0 负数补1
逻辑右移:右移丢弃,左边补0 都补0
int a = 10;
00000000 00000000 0000000 00001010
00000000 00000000 0000000 00000101 - 5
int b = a >> 1; 得到b = 5
整数的二进制表示形式:
原码:直接根据数值写出的二进制序列就是原码
反码:原码的符号位不变,其他位按位取反就是反码
补码:反码+1就是补码
注意:反码(补码-1)= 原码
-1
原码:10000000 00000000 00000000 00000001
反码:11111111 11111111 11111111 11111110(除了符号位其他位全部取反)
补码:11111111 11111111