第二章 运算方法和运算器

193
第第第 第第第第第第第第 第第第 第第第第第第第第 第第第第第第第第 一、 第第第第第第第第 一、 第第第第第 第第第第 、、 第第第第第 第第第第 、、 第第第第第第 第第第第第第 第第第第第第 第第第第第第 第第第第 第第第第 第第第第第第第第第第第 第第第第第第第第第第第

Upload: lillian-daugherty

Post on 15-Mar-2016

93 views

Category:

Documents


3 download

DESCRIPTION

第二章 运算方法和运算器. 一、数据和文字的表示 二、定点加法、减法运算 三、定点乘法运算 四、定点除法运算 五、逻辑运算 六、定点运算器的组成和结构. 2 .1 数据与文字的表示方法 -------------------------------------------------------------------------------- 2.1.1 数据格式 2.1.2 数的机器码表示 2.1.3 字符与字符串的表示方法 2.1.4 汉字的表示方法 2.1.5 校验码. 2.1.1 数据格式. 计算机中常用的数据表示格式有两种 : - PowerPoint PPT Presentation

TRANSCRIPT

  • 2.1 --------------------------------------------------------------------------------

    2.1.1 2.1.2 2.1.3 2.1.4 2.1.5

  • 2.1.1 :

  • 11n +1 2

  • 012n (0:01):

    (012n 01)0||12-n(2.1)

    0||2n1 (2.2)

    X0 X1X2...Xn

  • 21N N = RE MM:mantissa)N:(exponent)R: (radix)2816EsMsE1E2EmM1M2Mn

  • EsMsE1E2EmM1M2Mn MsE1E2EmM1M2Mn .

  • IEEE754 3264: S E M 3231 30 23 22 064S E M 63 62 52 51 0e e 127(01111111) e127.

  • 32 (1)s(1.)2127e127(2.5)

    64 (1)s(1.)21023 e1023 (2.6)

    2 00.5

  • 2 1/2=|M|1 S1=1 S1=0 1 .

  • 2

  • 303

  • 1.2.3.4.

  • [1] (41360000)1632

    [:]

    0100 0001 0011 0110 0000 0000 0000 0000

    e127100000100111111100000011=(3)10

    1 1.M1.011 0110 0000 0000 0000 0000 1.011011

    X(1)s1.M2e (1.011011)23 1011.011(11.375)10

  • [2] 20.5937532

    [:] 20.5937510100.10011

    1210100.100111.01001001124e4

    S=0 E4127131M010010011

    32 0100 0001 1010 0100 1100 0000 0000 0000(41A4C000)16

  • 3.

    1.()2.

  • BCDASCII4 12(c)13(d) 0 123 12 1 2 3 C 0 1 2 D()00

  • 4.

  • BCD

  • (1)

    (2)

    (3)

  • 2.1.2

  • 1.01

  • X 10 [X] = 1-X=1+|X| 01 X1 = + 0.1011011

    X2 = - 0.1011011 [X1]=0.1011011[X2] =1.1011011

  • 0+0-0[+0]=0.000...0[-0]=1.000...0

  • : : 1- 2-n :-(1- 2-n)8168: 127/128-127/12825516: 32767/32768 -32767/32768 65535

  • X 2n>X0[X] = 2n-X=2n+|X| 0X>-2nX1 = + 0 1011011

    X2 = - 0 1011011 [X1] =01011011[X2] =11011011

  • :[+0] =00000000 [-0] =10000000 : 2n-1:-(2n-1) 8168: 127-12725516: 32767 -32767 65535

  • 2.4 0000~1111 1616= 24 N 2n2

  • X 10 [x]= 2+X=2-|X| 0 X-1 X1 = + 0.1011011

    X2 = - 0.1011011 [X1]=01011011[X2]=10100101

  • X 2n>X0 [x]= 2n+1+X=2n+1-|X| 0X- 2nX1 = + 0 1011011

    X2 = - 0 1011011 [X1]=01011011[X2]=10100101

  • :n+1: 2n -1 ~ -2n n+1: 1- 2-n ~ - 1 0[0][0]0.0000

    0

  • [X]=[X] 1X= -01001001 [X]=11001001 [X]=10110110+1=10110111[X]= 28 +X=100000000-1001001= 10110111 10 0 0 0 0 0 0 0 - 1 0 0 1 0 0 1 1 0 1 1 0 1 1 1

  • 3 1

  • :

    X 1 X 0[X]= (2- 2-n )+X 0 X > -1

    X1=+0.1011011 [X1] =0.1011011X2= -0.1011011 [X2] =1.0100100

  • : X 2n > X 0 [X]= (2n+1 -1)+X 0 X > -2n X3=+1011011 [X3] =01011011 X4= -1011011 [X4] =10100100 0: [+0]=00000000 [-0] =11111111

  • 4.[X]= 2n + X 2n > X -2n X1 = 0101 0101[X1]=0101 0101[X1]=1101 0101X2 = -0101 0101[X2]=1010 1011[X2]=0010 1011

  • [X][X] [X] 01 [X]10X[X]=[X] =[X] X0 [X] [X] [X][X]

  • [5]16151(1)??(2)??

    [:](1)(2151)10(32767)10 0 111 111 111 111 111 (2151)10(32767)10 1 111 111 111 111 111 (2) (1215)10(0.111...11)2 (1215)10(0.111..11)2

  • [6]SEM32 (1)s(1.M)2E128 [:](1): 0 11 111 111 111 111 111 111 111 111 111 11 [1(12-23)]2127

    (2) : 0 00 000 000 000 000 000 000 000 000 000 00 1.02128

    (3): 1 11 111 111 111 111 111 111 111 111 111 11 [1(1223)]2127

    (4): 1 00 000 000 000 000 000 000 000 000 000 00 1.02128

  • 2.1.3 1. ASCII(128 95959533031127

  • 2.

    24

  • 1.

    :

    2.1.4

  • 2.

    ASCII0 1

  • 3.

  • 2.1.5

  • (01n1)n

    C01n1 (2.15)

    1C1C0

    C01n1 (2.16)

    1C0

  • A B AC(01n1C)BB('0'1'n1C ')

    F'0'1'n1C '

    F1F0

  • [7]5 [:] 801 1 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 0 1 0 1 0 1 0 1 0 10 1 0 1 0 1 0 0 0 1 0 1 0 1 0 0 1 0 1 0 1 0 1 0 0 00 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 10 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 01 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1

  • 2.2 2.2.1 2.2.2 2.2.3 2.2.4 2.2.5

  • [X]+[Y] = [X+Y] : [X-Y]=[X]+[-Y]

  • 2.2.1 [][][] (mod 2) :22

  • [8] 0.1001 0.0101[:] []0.1001 []0.0101

    []0.1001 []0.0101 []0.1110

    0.1110

  • [9] 0.1011 0.0101[:][]0.1011[]1.1011

    []0.1011 []1.1011 [] 10.0110

    0.0110

  • 2.2.2

    [][][][][] [][][]1[]

  • [10] 10.111020.1101[1][1][2][2]

    [:][1]1.0010[1]0.1110[2]0.1101[2]1.0011

  • [11] 0.11010.0110[:][]0.1101[]0.0110[]1.1010 [] 0.1101 [] 1.1010 [] 10.0111

    0.0111

  • 2.3 ||
  • [12] 0.1011 0.1001

    [:]

    []0.1011 []0.1001

    []0.1011 []0.1001 []1.0100

  • [13] 0.1101 0.1011

    [:]

    []1.0011 []1.0101 []1.0011 []1.0101 []0.1000

  • :

    ::

  • 42

    1.

    2. 4

    . Sf1Sf2

  • [14] 0.1100 0.1000

    [:]

    []00.1100[]00.1000

    []00.1100 []00.1000 01.0100

    011

  • [15] 0.1100 -0.1000

    [:] []11.0100[]11.1000

    []11.0100 []11.1000 10.1100

    101

  • 1. 4 VSf1Sf2Sf1Sf2

    2. 4

  • 00011011 OVR = Sf1 Sf2 = 1 OVR = Sf1 Sf2 = 0

  • 12VCfCoCfCo

    . SC

  • CS [X]= 1. 1 0 1 [X]= 1. 1 1 0 + [Y]= 1. 00 1 + [Y]= 0.1 0 0 [X+Y]= 10.1 1 0 [X+Y]= 10.0 1 0 C=0S=1 C=1S=1 X+Y=+0.010

  • 2.2.4 / AiBiCiSiCi1 2.2 2.2 SiAiBiCi Ci1AiBiBiCiCiAi (2.23)

  • 2.2

    Ai

    Bi

    Ci

    Si

    Ci+1

    0

    0

    0

    0

    0

    0

    0

    1

    1

    0

    0

    1

    0

    1

    0

    0

    1

    1

    0

    1

    1

    0

    0

    1

    0

    1

    0

    1

    0

    1

    1

    1

    0

    0

    1

    1

    1

    1

    1

    1

  • n1(FA)nM

    M0(AB)M1(AB)AB[A][B]B1MM11

    CnCn1CnCn1

  • (FA)Si6T(3T)Ci15TTT

  • n2.2(a)nta

    tan2T9T(2n9)T (2.22)

    9T2T

    ta(n-1)2T9T

  • 2.2.5 BCD()

    nBCDn4BCDBCD

  • iiCi
  • 2.3.1 1. :2.3

  • n() []f .n110 []f .n110[](ff)(0.n110)(0.n110) ff ()

  • 0.11010.1011.:

  • :100

  • nn2n n 1

  • 2. :ABC 1 2.NN

  • 3AC

  • :X=0.1101Y=0.1011XY. B=X Cd=4. :1()

    1()

    0()

    1()XY=0.10001111

  • A.B110CdnSxSy

  • 1. R0Z0R2XR1YR1R0 2.

  • R0 R1 ynALU R2CxQQynynRSLDR0LDR1T1T2+1Ti

  • 3.

    Aam1a1a0

    Bbn1b1b0

    ab

    m1n1 a ai2ib bj2j i0j0

  • ABmnP

    Ppmn1p1p0

    P

  • mn()aibj

  • mn{aibj|0im10jn1}mn12.4 mn

  • 55[16]A 11011B 10101aibjp9p8p0

    [:] a4b01 a3b01 a2b00 a1b01 a0b01a4b10 a3b10 a2b10 a1b10 a0b10a4b21 a3b21 a2b20 a1b21 a0b20a4b30 a3b30 a2b30 a1b30 a0b30a4b41 a3b41 a2b40 a1b41 a0b41

    Pp9p8p7p6p5p4p3p2p1p01000110111 (56710)

  • 4.(1) 2

    2

    C10 CiaiCi1

    ai*aiECi10in

    2

  • (2) (n1)(n1)

    AB()

  • A=anan-1a1a0B=bnbn-1b1b0(n1)ABnn2n:ABPp2n1p1p0p2nanbnP2n 1

  • [17] 1513

    [:] [] 01111 [] 11101 ||1111||11011111000011 ( 11000011)2=(-195)10 15 (13) 195

  • 2.4 2.4.1

    n()[]f .n110[]f .n110 q/[q](ff)+(0.n110/0.n110)

  • 0.10010.1011: 0.1 1 0 1q0.1 0 1 1 0.1 0 0 1 0 (r0)00.0 1 0 1 1 2111 0.0 0 1 1 1 0 r1 r10.0 0 1 0 1 1 22110.0 0 0 0 1 1 0 r2r20.0 0 0 1 0 1 1 23100.0 0 0 0 1 1 0 0 r3 r30.0 0 0 0 1 0 1 1 24110.0 0 0 0 0 0 0 1 r4r4

    q0.1101r0.00000001

  • 1. 211r021r1 3. r122r1>221r122r24. r223r22421r324r4

  • : : 1

  • 1. (1)|X|
  • 1. R0R2R1 n R1R0 2. 3.R1R0n+1 n+1 n0

  • R0 R1 qnALU R2CxQQqnqnRSLDR0LDR1T1T2+1Ti+1ff

  • R0R2R1XR0R00-YR0100nn-n

  • 2.4.2 1./(CAS) /(CAS)P0CASP1CAS

  • CASSiAi(BiP)Ci Ci1(AiCi)(BiP)AiCi (2.32)

    P0(FA)P1CiCi1

  • 2.01 440.123456 ()0.1230.q1q2q30.00r3r4r5r6 n14

  • /(CAS)(n1)(n1)(n1)2CAS()

  • 6() 0.123456 3 0.123q3 q0.q1q2q3r6 r0.00r3r4r5r6

  • P12CAS

  • ()CAS3T2nn(n1)2td3(n1)2Tn

  • 2.5 2.5.1 2.5.2 2.5.3 2.5.4

  • 2.5.1

  • 1.

    012n012nii(i012n)[21] 1010010112111100001 2[:] 110110100 200001111

  • 2. V 01n 01n 012n iii(i012n) [22] 1010000110011011 [:] 1 0 1 0 0 0 0 1 1 0 0 1 1 0 1 1 1 0 1 1 1 0 1 1 10111011

  • 3. 01n 01n 012n iii(i012n)

    [23] 1011100111110011[:]1 0 1 1 1 0 0 1 1 1 1 1 0 0 1 1 1 0 1 1 0 0 0 1 10110001

  • 4. 2 01n 01n 012niii(i012n) [24] 1010101111001100[:]1 0 1 0 1 0 1 1 1 1 0 0 1 1 0 0 0 1 1 0 0 1 1 1 01100111

  • 2.5.2 /(ALU) (FA)/ /(ALU)

  • 1. (FA) FiAiBiCi Ci1AiBiBiCiCiAi (2.35) AiBiS0S1S2S3XiYiXiYi

  • 2.10ALU

  • / FiXiYiCni Cni1XiYiYiCniCniXi

  • 2. S0 S1 S2 S3 Ai Bi YXYiS0 S1AiBiXiS2 S3AiBi2.4(52) 2.4 XiYi52 XiYi XiS2S3S2S3AiBi S2S3 AiBi S2S3 Ai

    YiS0S1AiS0S1AiBiS0S1AiBi

  • ALU

    FiYiXiCn+ iCni1YiXiCni

  • 42.3601

    Cn1Y0X0Cn

    Cn012

    Cn2Y1X1Cn1Y1Y0X1X0X1Cn

    23

    Cn3Y2X2Cn2Y2Y1X1Y0X1X2X0X1X2Cn

  • 34

    Cn4Y3X3Cn3Y3Y2X3Y1X2X3Y0X1X2X3X0X1X2X3Cn

    GY3Y2X3Y1X2X3Y0X1X2X3PX0X1X2X3

    Cn4GPCn

  • ALUGP

    ALU(CLA)

    Cn+4()0Cn

    4/(ALU)

  • S0S3ALU

    0F YX C 0

    1C 0F Y X 13.

  • //

  • 2.574181ALU:16 1616 1.2.5 2.AB1(1)AB 3.ABALUAB"

  • 4.ALU 74181ALUPG74181PG74182CLA

    474181P0G0G1P1P2G2P3G374182CLA

  • CnG0P0Cn

    CnG1P1CnG1G0P1P0P1Cn

    CnG2P2CnG2G1P2G0P1P2P0P1P2Cn

    Cn4 G3P3CnG3G2P3G1P1P2G0P1P2P3P0P1P2P3Cn G*P*Cn

    P*P0P1P2P3

    G*G3G2P3G1P1P2G0P1P2P3

  • TTL74182G*P*

  • 74181ALU74182CLAALU

  • 1632ALU74181ALU74182CLA16CLAALU

  • 2.5.3

    CPUCPUI/O

  • 2.14(a)4

  • 2.14

  • EDE0D1E1E0

  • 2.5.4 ALU

    ALU

  • 1. ALU ALUABCPU

  • 2. ALU ALUALUALU:

  • 1.ALU

    2.12ALUALU12

  • 3.

    ALUALU ALU 23ALU

  • 2.6 2.6.1

    2.6.2

    2.6.3

    2.6.4

  • 2.6.1

    2Ex M

    2EM

    EEMM

    (M2EEM)2EE

  • 1. 0 2.

    3.

    4.

  • (1) 0

    00

  • (2)

    E EE (1E

  • (3)

  • (4)

    01.10.1111.M

  • (5)

    01011 1""1"

  • (6) 1

  • [25] 20100.110110112100(0.10101100)

    [:][]00 0100.11011011[]00 1001.01010100 EEE[E][E]00 01011 10011 110E2ME2 []00 1000.00110110(11)(11)M2

  • 0. 0 0 1 1 0 1 1 0 (11) 1. 0 1 0 1 0 1 0 0 1. 1 0 0 0 1 0 1 0 (11)

    1.00010101(10) 00 011

  • 011. 0 0 0 1 0 1 0 1 11. 0 0 0 1 0 1 1 0

    00

    2011(0.11101010)

  • 2.6.2 1.

    2Ex M

    2EM 2(EE)(MM)

  • 2(E- E)(MM)

  • 2.

    0

    /

    /

  • (1)

    11[]2n2n2n[][]2n2n 2n(2n()) 2n[]1

  • [][]2n1[][]2n2n1 2n1(2n()) [][][](mod 2n1) [][][]

  • 0 1 01 0 1 0

  • [26] 011110[] []

    [:][]01 011 []00 110 []11 010[][][]10 001 [][][]00 101 3

  • (2)

  • 111 0111

  • 00 0 10 10 1

  • [27] [1]11.01100000[2]11.01100001[3]11.01101000[4]11.011110014

    [:][1]11.0110()

    2]11.0110()

    [3]11.0110()

    [4]11.1000()

  • [28] 250.011001123(0.1110010)4()8[]8()[:][M]0.0110011 [M]1.0001110[E]01 011 [E]00 011 [E]00 011[]00 011 0.0110011 [] 01 011 1.0001110(1) [EE][E][E]00 01100 01100 110 2

  • (2) [M][M][0.0110011][1.0001110] [1.10100101001010](3) 00 101(-3) 1.01001010010100

    (4) 1.0100101 []00 1011.0100101 23(0.1011011)

  • 2.6.3 1.

  • T k T{T1T2Tk} i
  • (Si): (Si) ,(L),(C),

    Siilmax{i}lml f1/

  • k n Tkk(n1) (2.45) kkn1n1nTLnk(2.46)

  • TLTkk

    TL nkCk Tk k(n1)

    n>>k Ck>k kk

  • 2.

    0442.1803

  • X=1.100022 Y=1.110024

    XYX=0.011024

    111.000125

  • [29] 0 170ns 260ns390ns 480nsL tl10ns(1) 4 (2)75ns()[:](1)90ns10ns100ns1234 300ns 4Ck300/1003(2) 75nsCk300/754

  • 2.6.4 1.CPU

    80x87Intel80x86CPU 80x87

  • (1)8038680x87386I/O386CPU80x8738638680x8780x8780x8780x8738680x8738680x8780x8738680x8780x87386

  • (2)7IEEE754 80x87 80

  • 2.CPU

    CPU84 (DF)(D1)(D2)(EX)UV41(X1)2(X2)(WF)(ER)U

  • 88080IEEE754808048610

  • 2