Click here to load reader
Upload
summer
View
121
Download
0
Embed Size (px)
DESCRIPTION
第二章 数据表示与指令系统. 2.1 数据表示 2.2 浮点数据表示 2.3 高级数据表示 2.4 指令系统的优化设计 2.5 指令系统设计的两种风格. 数据 用户定义的数据 —— 用户程序中使用 系统数据 —— 执行程序时生成 指令 —— 数据的复合. 2.1 数据表示. 2.1.1 数据类型、数据表示与数据结构. 数据类型 —— 定义了具有相同属性一组值的集合,还定义了这个集合上的操作集。. 整数、实数、布尔数、二进制位、字符、串、图、表、树、阵列、队列、链表、栈、向量等。. - PowerPoint PPT Presentation
Citation preview
2.1 2.2 2.3 2.4 2.5
2.1 2.1.1
CPUA=A+BAB200200 6, 4200*200=40000CPU 2440000 340000 740000
1, 4*40000=16000012/ CPU
(table graphrecordtree)(int floatstack)
1.16 -327683276702.1.2
2.
3.Nme rm re prm 16q(
mermrep()q () 0.00345 0.34510-2
1pqN
p=23q=7 rm = re=2N
q=2p=4rm=2rm=16rm 2 p=4(bit3~bit04bit3=1
rm 16 q2, p=4(bit3~bit04,bit3~bit0 110 bit3~bit0 00011111
1 rm rm248162816rm=232rm=215/2
2 rm1/2-2rm 215rm 168rm 21/2 rmrm 211bitrm 164bitsrm rm =2, 20(0.1001~0.1111) , 21(0.1~0.1111)rm =16, 160(0.1001~0.1111) , 161(0.0001
11691616q=5p=9re =2rm =16
117821 1 16
10.1211: 0 1000001 , 10000000>1 0 1000001 , 10000001
0.100000000
qrm qrm rmrm
22 1
rm 16 re 2, 44q=2rm 28 (124) 22 =(24))221/4rm=2rm 1615 1161162=(1/16)16216
rm2rm163
rm4rm 250%100% rm2rm 400011011
IBM370IBM430016BurroughsB6700,B77008DECVAX-11CDCCDC6600IntelX862
511211310114ROMPLA
2.2 Self-defining /
2.2.1
1.
2.2 A32B335301ABIC2R1AB2BA
1AB2MB3R>3
=++
LISPPROLOG
2.BurroughsB65007500
1010000101
:
3.
2.2.2 A=(a0,a1,a2,,an-1) -
=+ =- a0an-1a10
C(411)=A(411)+B(-43)=+=-
2.2.3 - - LISP,PROLOG
,
F=A*B+C/(D-E)AB*CDE-/+
12
2.3
2.3.1
DJS20081101VAX-114
2.
- - - - - -
op m1 m2op r m op r1 r2op op m op r(2)
3.
(CPI)
2.3.2
= + 2.3.3 1.
I/O21016: : :
: , , Huffman: , , : (Huffman), ()(), ()(),
R
1. I1 I2 I3 I4 I5 I6 I7 0.4 0.3 0.15 0.05 0.04 0.03 0.03 H=2.17R=(3-2.17)/3=0.28=28% 1 0001107 I1: 000 I2: 001 I3: 010 I4: 011 I5: 100 I6: 101 I7: 110
2
(1) (2) (3)(2)1) (4)10 (5)
10000001110.090.1510.061I1 I2 I3 I4 I5 I6 I7 0.4 0.3 0.15 0.05 0.04 0.03 0.030 10 110 11100 11101 11110 11111
I1: 0 I2: 10 I3: 110 I4: 11100 I5: 11101 I6: 11110 I7: 11111 R=(2.20-2.17)/2.20=1.36% =4L=0.4*1+0.3*2+0.15*3+0.05*5 +0.04*5+0.03*5+0.03*5 = 2.20
Huffman: - - 0, 1 3 Huffman,
1: Huffman0, 10, 110, 11100, 11101, 11110, 111110.4,0.3,0.15,0.05, 0.04, 0.03, 0.03I1, I2, I3 : 00, 01, 10I4, I5, I6, I7 : 1100,1101,1110,1111L=(0.4+0.3+0.15)*2+(0.05+0.04+0.03+0.03)*4 = 2.30=(2.30-2.20)/2.30=0.0565=5.65%
2. 2 2.3
4-8-124 4-6-10(B-1700)
0001000011101500000001...1110151111...11111111...000000011110151111...11111111...111111111111...15/15/158/64/5124-8-12
4-8-12 15-15-151545=(4812)15/45=84-8-12 8-64-5125848464851212/584=11.45
242150.05130.015140.004 (4-8-12) (15-15-15) 15-15-15000011101111
37440.12150.02550.004 (14)(3-6-9) 4-16-640XX1XX0xx 41xx 0xx 161xx 1xx 0xx 64 4-16-64 =0.12*4*3+0.02*15*6+0.004*55*9=5.22
478100.049180.02500.003 125( 4-6-10) 410(0000-1001) 5(1010-1110)220 (1111)664
(1)
(1)
5.IBM370IBM3701632483800RR1601RX3210RSSI3211SS48RSXI
RR(R1) OP (R2) R1RX(R1) OP M[(X2)+(B2)+D2] R1RS(R3) OP M[(B2)+D2] R1SII OP M[(B1)+D1] M[(B1)+D1]
SS LM2[(B2)+D2] M1[(B1)+D1]16RR 3248SS8RR2440SSR
1.419216123
1.OPC 000 xxx xxx xxx 011 xxx xxx xxx 000 000 xxx 111 101 xxx111 111 110 000 111 111 111 1114192163333419216
2.166XX
5123(45()
155XagAGX2 5
1B2B4B0.5B32
1 ADD XAB X MUL XXC MUL YDE Y ADD XXY SUB YFG DIV XXY63//63=1861+3242B421844272112B
1B2B4B0.5B
( MOV XA X ADD XB MUL XC MOV YD MUL YE ADD XY MOV YF SUB YG DIV XY X9263/32+63=2491+2245B452444596141B1B2B4B0.5B
LOAD F FSUB G GSTORE X f-gXLOAD AADD BMUL CSTORE Y (a+b)cLOAD DMUL EADD YDIV XSTORE X1212/12121+236B36124364884B
PUSH A a PUSH B b ADD PUSH C MUL PUSH D PUSH E MUL ADD PUSH F PUSH G
SUB DIV POP X X
148263/ 82+63=3481+2630B3034430136166B
R1R2 MOVE R1A R1 ADD R1B MUL R1C MOVE R2D MUL R2E ADD R1R2 MOVE R2F SUB R2G DIV R1R2 MOVE XR1 X10448
25
32 R-S
2.4 (CISC) (RISC)
2.4.1(CISC)CISC(Complex Instruction Set Computer) CISC 1.2. 3.
CPU1.
Z80LDIR254100499 LDIRLDDR POLY
1 2 3
2.
DEA()B-1700
3.
VAX-11CHMXRETHOT SPORTS) I/O
(1)200(2)VLSI(3) 20%-80%80%20%CISC1979David PattersonCISC
2.4.2 RISC RISC(Reduced Instruction Set Computer) CPU
1.RISC Cache PattersonRISC1979IBMIBM80110MIPS
2.RISC(1) (2) (3) (4) -CPU-CPU-CPU
CPURISC
ABAABBABCCBCCC
RISCRISC
()Y=(X)+1Y=(X)+1+R2
RISC RISC. RISCLOADSTORE
Tcpu=IN*CPI*TcTc:IN:CPUCPI:CISCRISC RISCTcpuCISCRISCCPITcpu,CISCINTcpu
RISC
RISCCISCCPUVLIWRISC
2 231415162061. [email protected]
2.RISC3264 ANSI/IEEE i86081632
(1) 32RISC4G(2) i860SPARC4K
RISCCPU Cache
RISC
p=6m=48rm=28162.3 6482816
15. 9ADD30%SUB24%JOM6% STO7%JMP7% SHR2%CIL3% CLA20%STP1%
,16
12345
Carnegie Mellon(1)(2)LOADSTORELOADSTORE(3)(4)(5)(6)
IEEEMichael SlaterRISCRISC LOADSTORE LOAD
Patterson1981198332RISC CPURISC IRISC IIRISC(1)Carnegie Mellon(2)IEEEMichael Slater
15. (1) Huffman0.010.020.03010.030.06010.060.12010.070.070.14010.260100.300.200.240.44010.5610011
Huffman ADD() 30% 01 SUB() 24% 11 CLA() 20% 10 JOM() 6% 0001 STO() 7% 0011 JMP() 7% 0010 CIL() 3% 00001 SHR() 2% 000001 STP() 1% 000000
(2) 2-5 ADD() 30% 00 SUB() 24% 01 CLA() 20% 10 JOM() 6% 11000 STO() 7% 11001 JMP() 7% 11010 SHR() 2% 11011 CIL() 3% 11100 STP() 1% 11101
(3) 23=8(4) -OP(2)R1(3)R2(3)OP(5)R1(3)X(2)d(6)(5) 64(-32~+31)-
1.2.3.4.
1.10I1 20%I2 12%I3 11%I4 15%I5 8%I6 3%I7 2%I8 18%I9 10%I10 1%11023.22.12348180
1.3.033-43.143-53.122.
2 23141516206
3.rm 2pm
rmmrp2p
-1 -(rm -1+ rm -p ) 0 -(1-rm -p ) - rm -1
317(82 16
q=6p=8re =2rm =2
q=6p=48rm=28162.3 6482816
p=16q=6 rm=16 re=2N
rm20rm>2|log2rm|10rm1630rm23
OS
2816P=4rm=2,rm=16 -- eta2+
=+
+