您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 咨询培训 > 《微机原理》第1章计算机基础知识
第一章计算机基础知识1-2计算机发展与组成1-1计算机运算基础1-3单片机与嵌入式系统1-1计算机运算基础1-1-1数制及其转换1-1-2计算机中数的表示法1-1-3计算机中数的运算方法1-1-4计算机中的编码系统1-1-1数制及其转换数制(即计数制)是计数的规则、计数的方式。进制(即进位计数制)是按不同的进位规则(方式)计数的数制。按不同的进位规则有如下的进制:计算机中常用的进制有:二进制、八进制、十进制、十六进制2、3、4……N日常生活中的常用进制有:7、10、12、24、301-1-1数制及其转换•一.十进制ND∶有十个数码0~9、逢十进一。用于计算机输入输出,人机交互。•二.二进制NB∶有两个数码:0、1,逢二进一。P2二进制为机器中的数据形式———机器数。•三.十六进制NH:十六个数码:0~9,A~F,逢十六进一。用于表示或书写四位二进制数。•四.八进制NO:八个数码:0~7,逢八进一。用于表示三位二进制数。字节中的位的编码•不同进位制数书写时以下标或后缀区别,十进制数可不带下标或后缀。如:101、101D、101B、101H、101H、101O、101B1、进位制中数的表示各进位制中表示数的对比表标示符数码符号基数权最大数码符号计算原则真值N左移一位右移一位列举个数十进制D0、1、2、3、4、5、6、7、8、910109逢十进一乘10除10二进制B0、1221逢二进一乘2除2十六进制H0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F1616F(15)逢16进一乘16除16八进制O0、1、2、3、4、5、6、7887逢八进一乘8除8110nmiiiDDNi10i2i16i812nmiiiBBN116nmiiiHHN18nmiiiOON为整数部分的位数为小数部分的位数其中:为整数nmnmi]1,[各进位制的数码对照表十进制二进制十六进制八进制十进制二进制十六进制八进制0000000121100C141000111131101D152001022141110E163001133151111F1740100441600010000102050101551700010001112160110661800010010122270111771900010011132381000810200001010014249100191121000101011525101010A1222000101101626111011B13230001011117272、不同进(位计数)制之间的转换•对任意R进位计数制的一般表达式:NR=Kn-1Rn-1+Kn-2Rn-2+…+K1R1+K0R0+K-1R-1+…+K-mR-m••一个R1进制的数转换成R2进制数的方法:P5•先按R1进制的真值展开,•后按R2进制的运算法则求和计算。1nmiiiRRKN(一)二、十六、八进制数转换成十进制数•DFC.8H=13×162+15×161+12×160+8×16-1=3580.5举例:1011.1010B=1×23+1×21+1×20+1×2-1+1×2-3=11.625•按真值计算公式先展开,然后按照十进制运算法则求和。(二)十进制数转换成二、十六、八进制数•整数、小数分别转换•1).整数转换法“除基取余”:十进制整数不断除以转换进制基数,直至商为0。每除一次取一个余数,从低位排向高位。举例:39=100111B2391(b0)2191(b1)291(b2)240(b3)220(b4)211(b5)0208=D0H16208余01613余13=DH01.39转换成二进制数。2.208转换成十六进制数(二)十进制数转换成二、十六进制数•2).小数转换法•“乘基取整”:用转换进制的基数乘以小数部分,直至小数为0或达到转换精度要求的位数。每乘一次取一次整数,从最高位排到最低位。举例:1.0.625转换成二进制数0.625×21.2501(b-1)×20.500(b-2)×21.01(b-3)•0.625=0.101B2.0.625转换成十六进制数0.625×16=10.00.625=0.AH3.208.625转换成十六进制数208.625=D0.AH(三)二进制与十六进制数之间的转换•24=16,四位二进制数对应一位十六进制数。•举例:•3AF.2H=001110101111.0010=1110101111.001B3AF2•1111101.11B=01111101.1100=7D.CH7DC(四)二进制与八进制数之间的转换------三位二进制数对应一位八进制数。注意:以小数点为分界,分别左右数4位数1-1-2计算机中数的表示法•2无符号数的表示方法•3带符号数的表示方法•1机器数与真值1、机器数与真值P5•一个机器数由于解释方法不同,可以有几种含义、代表几种真值。•一个数据真值由于编码方式不同,可以有几种表示(存储)形式、即几种机器数。机器数:是一个数(据)在计算机中的表示(存储)形式是一种简单的二进制数。其位数通常为8的倍数真值:一个机器数所代表的真实数值(实际意义)称为该机器数的真值01100000D7D0D6D1D5D4D3D241H/+65/’A’真值2、无符号数的表示方法•用途:用来表示存储器地址、指令代码、数据信号••书写形式:有二进制、十进制、十六进制等00000000B~11111111B、0~255、00H~FFH•无符号数:机器数中的所有位均用来表示数值01100000数值位D7D0D6D1D5D4D3D23、带符号数的表示方法•带符号数通常使用三种表示方法:(一)原码(TrueForm)(二)反码(One’sComplement)(三)补码(Two’sComplement)•带符号数:使用机器数的最高位来表示数的正负,其余位用来表示数值。通常最高位为“0”表示正数,最高位为“1”表示负数。01100000符号位数值位D7D0D6D1D5D4D3D2(一)、原码(TrueForm)•原码:最高位为符号位,0表示“+”,1表示“-”。数值位保持机器数的原样(与真值数值位相同)01100000符号位数值位D7D0D6D1D5D4D3D2•例8位原码机器数:真值:[x1]真=+1010100B[x2]真=-1010100B原码机器数:[x1]原=01010100[x2]原=11010100(一)、原码(TrueForm)8位二进制原码00000000+000000001+100000010+2......……01111101+12501111110+12601111111+12710000000-010000001-110000010-2…………11111101-12511111110-12611111111-127增大减小增大[+0]原=0000…000[-0]原=1000…000•特点:原码表示简单直观,范围-127~+127•真值0的表示不唯一•加减运算复杂。•原码同机器数的递增关系不对(二)反码(One’sComplement)•正数的反码与原码表示相同。负数反码符号位为1,数值位为原码数值各位取反例8位反码机器数:x1=+4:[x1]原=00000100[x1]反=00000100x2=-4:[x2]原=10000100[x2]反=1111101101100000符号位数值位D7D0D6D1D5D4D3D2(二)反码(One’sComplement)•如果已知一个数的反码,求其真值?–正数可直接求得–负数则要先求一次反码,以获得原码,然后再求其真值例8位反码机器数:[x1]反=01001000则[x1]原=01001000,x1=+72[x2]反=10110111则[x2]原=11001000,x2=-72特点:反码同机器数的递增关系相同,范围-127~+127真值0的表示仍不唯一反码在计算机中用得较少[+0]反=0000…000[-0]反=1111…111(三)补码(Two’sComplement)•正数的补码表示与原码相同。负数补码的符号位为1不变,数值位等于反码加1。例:求8位补码机器数:x1=+4x2=-4[x1]原=[x1]反=[x1]补=00000100[x2]原=10000100[x2]反=11111011[x2]补=11111100•补码表示的优点:•0的表示唯一;8位二进制原码反码补码00000000+0+0+000000001+1+1+100000010+2+2+2......………………01111101+125+125+12501111110+126+126+12601111111+127+127+12710000000-0-127-12810000001-1-126-12710000010-2-125-126……………………11111101-125-2-311111110-126-1-211111111-127-0-1增大增大减小增大增大增大增大加减运算方便,可将减法运算转换成加法运算。数的补码与“模”有关“模”即计数系统的量程,所能表达的最大数加一=进位。当X0,[X]补=模-|X|。举例:钟表对时。设时钟系统“模”为12,当前时间为10点,而表指示时间为8点整。8位二进制数的模为:28=256当X0,[X]补=28-|X|=256-|X|=255-|X|+1=[X]反码+18+2=108+[-10]补=8+[12-10]=8+2=10例如:y=72-10减法运算的结果y=62用补码运算y=72+(-10)[y]补=[72]补+[-10]补=01001000B+28-00001010B-28=01001000B+11110110B-100000000B=100111110B-100000000B=00111110B=622位十进制数的模为:102=100当X0,[X]补=102-|X|=100-|X|=99-|X|+1=[X]反码+1[y]补=[72]补+[-10]补=72+(99-10+1)-100=72+90-100=162-100=62数的补码与“模”有关“模”即计数系统的量程,所能表达的最大数加1=进位。8位机器数表示的真值8位机器数带符号数十六进制二进制无符号数原码反码补码0001…7F80…FEFF0000000000000001…0111111110000000…111111101111111101…127128…254255+0+1…+127-0…-126-127+0+1…+127-127…-1-0+0+1…+127-128…-2-1表示范围0~2550~255-127~+127-127~+127-128~+1271-1-3计算机中数的运算方法•1、二进制加法运算•2、二进制减法运算•3、二进制逻辑运算•4、带符号数加减运算•5、无符号数加减运算•6、溢出4、带符号数加减运算1.补码加法运算:[X+Y]补=[X]补+[Y]补符号作为数值直接参与运算,变减法为加法运算。例X1=+13,Y1=+6,X2=-13,Y2=-6,求X1+Y1、X2+Y2解先求[X1]补、[Y1]补、[X2]补、[Y2]补00001101[+13]补11110011[-13]补+00000110[+6]补+11111010[-6]补00010011[+19]补111101101[-19]补进位为模,舍弃4、带符号数加减运算例X1=+6,Y1=+8,X2=-6,Y2=-8,求X1-Y1、X2-Y2先求[X1]补、[Y1]补、[-Y1]补、[X2]补、[Y2]补、[-Y2]补00000110[+6]补11111010[-6]补+11111000[-(+8)]补+00001000[-(-8)]补11111110[-2]补100000010[+2]补进位为模,舍弃2.补码减法运算:变减法为加法运算[X-Y]补=[X]补+[-Y]补5、无符号数加减运算1.加法运算:直接相加。2.减法运算:‘变补相加’。例:X=150=96H,Y=
本文标题:《微机原理》第1章计算机基础知识
链接地址:https://www.777doc.com/doc-3207152 .html