计算机概论计算篇一
进制运算的基础
进制概述
- 进位制是一种记数方式,亦称进位计数法或位值计数法
- 有限种数字符号来表示无限的数值
- 使用的数字符号的数目称为这种进位制的基数或底数
二进制
二进制(binary)在数学和数字电路中指以2为基数的记数系统,以2为基数代表系统是二进位制的。这一系统中,通常用两个不同的符号0(代表零)和1(代表一)来表示。数字电子电路中,逻辑门的实现直接应用了二进制,因此现代的计算机和依赖计算机的设备里都用到二进制。每个数字称为一个比特(Bit,Binary digit的缩写)。
八进制
八进制,Octal,缩写OCT或O,一种以8为基数的计数法,采用0,1,2,3,4,5,6,7八个数字,逢八进1。一些编程语言中常常以数字0开始表明该数字是八进制。八进制的数和二进制数可以按位对应(八进制一位对应二进制三位),因此常应用在计算机语言中。
十进制
满十进一,满二十进二,以此类推……2.按权展开,第一位权为100,第二位101……以此类推,第N位10^(N-1),该数的数值等于每位位的数值*该位对应的权值之和。
十六进制
一般用数字0到9和字母A到F(或af)表示,其中:AF表示10~15,这些称作十六进制数字。
八进制&十六进制
- 计算机喜欢二进制,但是二进制表达太长了
- 使用大进制位可以解决这个问题
- 八进制、十六进制满足2的n次方的要求
1024=0b1000000000
1024=0o2000
1024=0x400
二十进制
- 玛雅文明的玛雅数字
- 因努伊特的因努伊特数字
六十进制
- 时间、坐标、角度等量化数据
二进制运算的基础
有符号数与无符号数
原码表示法
- 使用0表示正数、1表示负数
- 规定符号位位于数值第一位
- 表达简单明了,是人类最容易理解的表示法
0有两种表示方法:00、10
原码进行运算非常复杂,特别是两个操作数符号不同的时候
- 判断两个操作数绝对值大小
- 使用绝对值大的数减去绝对值小的数
- 对于符号值,以绝对值大的为准
补码表示法
- 希望找到不同符号操作数更加简单的运算方法
- 希望找到使用正数代替负数的方法
- 使用加法操作代替减法操作,从而消除减法
几个例题
引进补码的目的
- 减法运算复杂,希望找到使用正数替代负数的方法
- 使用加法代替减法操作,从而消除减法
那么问题来了:在计算补码的过程中,还是使用了减法!!
反码的目的是找出原码和补码之间的规律,消除转换过程中的减法
几个例题
总结
小数的补码
引出问题
几个例题