数据库软考易混淆知识之计算机系统基础
一、各种寄存器存放的东西
程序计数器(PC):下一条指令所在单元的地址(程序员能访问的)
指令寄存器(IR):保存当前正在执行的一条指令(操作码和地址码)
数据寄存器(累加寄存器):保存操作数和运算结果,其目的是为了节省读取操作数所需占用总线和访问存储器的时间
地址寄存器:保存当前CPU所访问的内存单元的地址,以方便对内存的读写操作
程序状态寄存器:记录运算中产生的标志信息(进位标志位、零标志位、符号标志位、溢出标志位、奇偶标志位等)
缓冲寄存器(DR):
二、进制间的转换(二进制、八进制、十进制、十六进制)
1、其他进制转换为二进制:都是用除2取余法
2、二进制转为其他进制:
1)二进制转十进制:按权展开相加
例如:10010110 = 1*27+0*26+0*25+1*24+0*23+1*22+1*21+0*20=150
2)二进制转八进制:3位二进制数按权展开相加得到1位八进制数。(注意事项,3位二进制转成八进制是从右到左开始转换,不足时补0)
3)二进制转十六进制:与二进制转八进制方法近似,八进制是取三合一,十六进制是取四合一。(与八进制一样也是从右到左开始转换,不足时补0)
三、十进制转换为八进制或十六进制
1、间接法:把十进制转成二进制,然后再由二进制转成八进制或者十六进制
2、直接法:把十进制转八进制或者十六进制按照除8或者16取余,直到商为0为止
四、原码、补码、反码、移码之间的关系
补码0有唯一值,常用来表示和运算数据,因为采用补码可以简化计算机运算部件的设计(31题)
例题:如果“2X”的补码是“90H”,那么X的真值是()
解析:90H为十六进制,转换为二进制为10010000,是负数,其绝对值的二进制形式为01110000(按位求反加一),转换为十进制为-112(原值为负 数),即2X=-112,因此X=-56
五、寻址方式
立即寻址:操作数包含在指令中
直接寻址:操作数存放在内存单元中,指令中直接给出操作数所在存储单元的地址
寄存器寻址:操作数存放在某一寄存器中,指令中给出存放操作数的寄存器名
寄存器间接寻址:操作数存放在内存单元中,操作数所在存储单元的地址在某个寄存器中
间接寻址:指令中给出操作数地址的地址
相对寻址:指令地址码给出的是一个偏移量(可正可负),操作数的地址等于本条指令的地址加上该偏移量
变址寻址:操作数的地址等于变址寄存器的内容加上偏移量
例题:若CPU要执行的指令为:MOV R1,#45(即将数值45传送到寄存器R1中)则该指令中采用的寻址方式为
答案:寄存器寻址和立即寻址
解析:R1是寄存器,属于寄存器寻址,45为立即数,属于立即寻址