进制转换
十进制转X进制,都是除X,答案作为该位上的数字,余数作为下一个被除数,直到除完为止。
X进制转十进制,该位上的数字a乘与X的位数i次幂,求和
十六进制与二进制:每四位二进制对应一位十六进制
位数
一位:bit 1个二进制位,
半字节:nibble 4个二进制位,int类型
字节:byte 8个二进制位,能表示的数最大为
2
8
=
256
2^8=256
28=256,相当于char类型
字: word 16个二进制位,两个字节,int类型
双字:dword 32位,四个字节,float类型
符号数
符号数和非符号数本质上一样,只是由于运算时的运算指令区别,导致不同的结果。
比如1010B可以表示符号数-6,也可以表示非符号数12
8位符号数,最大是
2
7
2^7
27,符号数的第一位已经被用来表示符号,1是负数,0是正数
求一个负数二进制表示一种方法是用
0
0
0减去该数绝对值二进制表示。
X
=
0
−
∣
X
∣
X=0-|X|
X=0−∣X∣
正负数变换
求反加一法:每一位求反,然后末位加1
4位符号数5:0101B
求反:1010B
末尾加一:1011B 表示符号数-5
再求反加1,变为符号数5
二进制减法注意:0借位后代表的是2,从低位先开始算
符号扩展
汇编中的运算只能在固定位数的数字间进行,所以位数小的可能要扩充为位数大的。
非符号数扩充,高位全部填0,
符号数扩充,正数高位为0,负数高位为1
字符表示
字符表示即用ascii码表示。汇编中不管读还是显示数字,只能用ascii码显示,不能以数字格式显示。
运算
算术运算:加减乘除
逻辑运算:and or xor not
移位运算:可以实现乘除