kien truc may tinh _ bkhn

676
CẤU TRÚC MÁY TÍNH Computer Architecture Hoàng Văn Hiệp Bộ môn Kỹ thuật máy tính,Khoa CNTT,ĐHBK Hà Nội Mob. 0916093209 Email. [email protected]

Upload: pham-dinh-duong

Post on 23-Oct-2015

41 views

Category:

Documents


3 download

TRANSCRIPT

  • CU TRC MY TNH

    Computer Architecture

    Hong Vn Hip

    B mn K thut my tnh,Khoa CNTT,HBK H Ni

    Mob. 0916093209

    Email. [email protected]

  • 2

    Ch v bn quyn

    Ton b slide mn hc Cu trc my tnh c xy dng da trn slide ca Thy Nguyn Kim Khnh v Thy Nguyn Ph Bnh, b mn K thut my tnh, khoa Cng ngh thng tin, i hc Bch Khoa H Ni.

    Yu cu ngi hc khng ph bin, chnh sa ni dung ca slide ny nu cha c s cho php ca tc gi.

    XIN CM N!

  • 3

    Ti liu tham kho

    Stallings, W. Computer Organization and Architecture,

    6th ed, Prentice Hall, 2003

    Ytha Yu, Charles Marut - Lp trnh assembly v my tnh IBM-PC - 1992.

    Vn Th Minh K thut vi x l Nh xut bn Gio dc, 1997.

    Walter A. Triebel, Avtar Singh - The 8088 and 8086

    Microprocessors: Programming, Interfacing, Software,

    Hardware and Applications - 1997.

    a ch download bi ging, bi thc hnh v phn mm

    ftp://dce.hut.edu.vn/hiephv

  • 4

    Ni dung mn hc

    Chng 1: Gii thiu chung

    Chng 2: Biu din d liu v s hc my tnh

    Chng 3: H thng my tnh

    Chng 4: H my tnh IBM-PC

    Chng 5: Lp trnh hp ng trn PC

  • 5

    Cu trc my tnh

    Chng 1

    Gii thiu chung

  • 6

    Ni dung chng 1

    1. My tnh v phn loi my tnh

    2. S tin ha ca my tnh

  • 7

    My tnh v phn loi my tnh

    nh ngha my tnh:

    Thit b in t thc hin cc cng vic sau: Nhn thng tin vo

    X l thng tin theo chng trnh c nh sn bn trong

    a thng tin ra

    My tnh hot ng theo chng trnh.

  • 8

    My tnh v phn loi my tnh

    M hnh my tnh c bn

  • 9

    My tnh v phn loi my tnh

    M hnh phn lp ca my tnh

  • 10

    Phn loi my tnh

    Phn loi truyn thng:

    My vi tnh (Microcomputer)

    My tnh nh (Minicomputer)

    My tnh ln (Mainframe Computer)

    Siu my tnh (Supercomputer)

  • 11

    Phn loi my tnh

    Phn loi hin i:

    My tnh c nhn (Personal Computer)

    My ch (Server)

    My tnh nhng (Embedded Computer)

  • 12

    My tnh c nhn

    L loi my tnh ph bin nht i vi ngi dng thng thng.

    Thit k theo hng ti u c v gi thnh v hiu nng

    Mt s loi: My tnh bn (Desktop)

    My tnh xch tay (Notebook)

    My trm lm vic (Workstation)

    Gi thnh: t vi trm n vi nghn USD

  • 13

    My tnh c nhn

  • 14

    My Server

    My ch (Server)

    Thc cht l my phc v

    Dng trong mng my tnh theo m hnh Client/Server

    Tc v hiu nng tnh ton cao

    Dung lng b nh ln

    tin cy cao

    Gi thnh: t hng chc nghn n hng triu USD.

  • 15

    My Server

  • 16

    My tnh nhng

    My tnh nhng (Embedded Computer)

    c t trong thit b khc (bao gm c phn cng v cc kt cu c kh) iu khin thit b lm vic

    c thit k chuyn dng V d:

    in thoi di ng

    B iu khin trong my git, iu ha nhit

    Mt s thit b mng: Switch, Router,

    Gi thnh: t vi USD n hng trm ngn USD

  • 17

    My tnh nhng

  • 18

    Kin trc my tnh

    Kin trc tp lnh

    (Instruction Set Architecture ISA)

    T chc my tnh

    (Computer Organization)

    Kin trc my tnh

  • 19

    Kin trc tp lnh

    Nghin cu cu trc v hot ng ca my tnh theo cch nhn ca ngi lp trnh.

    Kin trc tp lnh ca my tnh bao gm Tp lnh: tp hp cc chui s nh phn m ha cho cc

    thao tc m my tnh c th thc hin c.

    Kiu d liu: cc kiu d liu m my tnh c th x l.

    Ch a ch

  • 20

    T chc my tnh

    Nghin cu cu trc phn cng ca my tnh.

    Cc thnh phn c bn ca my tnh B x l trung tm (Central Processing Unit): iu khin

    hot ng ca my tnh v x l d liu.

    B nh chnh (Main Memory): cha cc chng trnh v d liu ang c s dng.

    H thng vo ra (Input/Output System): trao i thng tin gia my tnh v bn ngoi.

    Lin kt h thng (System Interconnection): kt ni v vn chuyn thng tin gia cc thnh phn vi nhau

  • 21

    T chc my tnh

    Cu trc c bn ca my tnh

  • 22

    Ni dung chng 1

    1. My tnh v phn loi my tnh

    2. S tin ha ca my tnh

  • 23

    Cc th h my tnh

    Th h 1: My tnh dng n in t chn khng (1946 - 1955)

    Th h 2: My tnh dng transistor (1956 - 1965)

    Th h 3: My tnh dng mch tch hp (1966 - 1980)

    Th h 4: My tnh dng mch tch hp VLSI (1981 - nay)

  • 24

    My tnh dng n chn khng

  • 25

    Kin trc Von Neumann

    Da trn tng chng trnh c lu tr (stored-program concept)

  • 26

    My tnh dng transistor

    My PDP-1 v CDC 6600

  • 27

    My tnh dng mch tch hp

    Mch tch hp (Integrated Circuit IC) hay cn gi l vi mch, l cc chip bn dn trong cha cc transistor v cc linh kin khc.

    So vi th h trc, cc my tnh th h ny: Nh gn hn

    Nhanh hn

    Tiu th t nng lng hn

    R tin hn

  • 28

    Siu my tnh CRAY-1

  • 29

    My tnh dng mch tch hp VLSI

    Cc cng ngh mch tch hp: SSI (Small scale integration) t 1965

    Tch hp ti 100 transistor trn mt chip

    MSI (Medium scale integration) cho n 1971

    Tch hp t 100 n 3,000 transistor trn mt chip

    LSI (Large scale integration) t 1971 n 1977

    Tch hp t 3,000 n 100,000 transistor trn mt chip

    VLSI (Very large scale integration) t 1978 n nay

    Tch hp t 100,000 n 100,000,000 transistor trn mt chip

    ULSI (Ultra large scale integration)

    C hn 100,000,000 transistor trn mt chip

  • 30

    My tnh dng mch tch hp VLSI

    Cc sn phm ca cng ngh VLSI: B vi x l (Microprocessor): CPU c ch to trn

    mt chip.

    Cc vi mch iu khin tng hp (Chipset): cc vi mch thc hin c nhiu chc nng iu khin v ni ghp.

    B nh bn dn, gm hai loi: ROM, RAM

    Cc b vi iu khin (Microcontroller): my tnh chuyn dng c ch to trn mt chip.

  • 31

    My tnh dng mch tch hp VLSI

  • 3. S tin ha ca my tnh

    Computer architecture HiepHV KTMT

    Th h 1: My tnh dng n in t chn khng (1946 - 1955)

    Th h 2: My tnh dng transistor (1956 - 1965)

    Th h 3: My tnh dng mch tch hp IC (1966 - 1980)

    Th h 4: My tnh dng mch tch hp VLSI (1981 - nay)

    Th h 5: My tnh dng ULSI,

  • Th h 1: My tnh dng n in t chn khng

    Computer architecture HiepHV KTMT

    c im Xy dng trn c s cc n in t chn khng

    Kch thc, trng lng v cng sut tiu th rt ln nhng c tc rt chm

  • V d my tnh ENIAC

    Computer architecture HiepHV KTMT

    My tnh in t u tin

    D n ca b quc phng M

    Bt u nm 1943, kt thc nm 1946

    c im Nng 30 tn,

    18.000 n in t

    1500 rle,

    Cng sut tiu th 140KW

    Tc : 5000 php cng mi giy

  • V d my tnh ENIAC (tip)

    Computer architecture HiepHV KTMT

    B nh ch lu tr d liu

    Lp trnh bng cch thit lp cc chuyn mch v cc cp ni

  • V d my tnh Eniac

    Computer architecture HiepHV KTMT

    Di 10m, rng 3m, cao 3m

  • Kin trc Von-Neumann

    Computer architecture HiepHV KTMT

    Khi nim nh chng trnh (stored program) c a ra (1947)

    c trng c bn: D liu v cc lnh (chng trnh) c cha trong mt

    b nh c ghi.

    B nh c nh a ch theo tng ngn nh, khng ph thuc vo ni dung ca n.

    My tnh thc hin lnh mt cch tun t.

  • Kin trc Von neumann

    Computer architecture HiepHV KTMT

  • Kin trc Von neumann

    Computer architecture HiepHV KTMT

    Trn c s kin trc ny cc my tnh thng mi ra i

    1947: UNIVAC 1 (Universal automatic computer)

    1950s: UNIVAC 2

  • UNIVAC 1

    Computer architecture HiepHV KTMT

  • IBM

    Computer architecture HiepHV KTMT

    IBM: International Business Machine

    1953: ra i my tnh IBM 701

    1955: IBM 702

  • IBM 701

    Computer architecture HiepHV KTMT

  • Th h 2: My tnh dng transistor

    Computer architecture HiepHV KTMT

    Trn c s pht minh ra transistor Bell Labs vo

    nm 1948.

    Transistor c kch thc nh hn nhiu, tc

    nhanh hn v tiu th nng lng t hn nhiu

    thay th bng n in t

    My tnh th h transistor c kh nng thc hin

    hng trm nghn php tnh cng trong mt giy

    Cc ngn ng lp trnh bc cao ra i

  • My tnh TRADIC

    Computer architecture HiepHV KTMT

    My tnh u tin s dng hon ton bng bn dn:

    8000 transistors

    Nhanh hn

    Nh hn

    R hn.

  • Th h 3: My tnh dng mch tch hp (1966 - 1980)

    Computer architecture HiepHV KTMT

    Da trn cng ngh mch tch hp, cn gi l vi mch (Integrated Circuit - IC)

    Cc vi mch c SSI/MSI/LSI (small scale, Medium scale, )

    Xut hin cc siu my tnh nh CRAY-1, VAX

    Cc b vi x l - CPU c ch to trn mt chip - cng ra i v bt u pht trin

  • My tnh th h 3

    Computer architecture HiepHV KTMT

    Hng t

    php ton/s

  • Th h 4: My tnh dng mch tch hp VLSI (1981 - nay)

    Computer architecture HiepHV KTMT

    Pht trin trn c s cc mch tch hp c mt tch hp siu ln VLSI.

    Cc sn phm ca cng ngh VLSI: B vi x l (Microprocessor): CPU c ch to trn mt

    chip

    Cc vi mch iu khin tng hp (Chipset): cc vi mch thc hin c nhiu chc nng iu khin v ni ghp.

    B nh bn dn (Semiconductor Memory): ROM, RAM

    Cc b vi iu khin (Microcontroller): my tnh chuyn dng c ch to trn mt chip

  • Th h th t Vi x l (Microprocessor)

    Computer architecture HiepHV KTMT

    Mcroprocessor = Central Processing Unit (CPU) thit k trong 1 chip n

    1971 : Intel 4004

    tn s 108KHz , cha 2300 transistors

  • Th h th t Vi x l (Microprocessor)

    Computer architecture HiepHV KTMT

    Intel Corp. s dng chip Intel 4004 trong cc my tnh (calculator)

  • Th h th t Vi x l (Microprocessor)

    Computer architecture HiepHV KTMT

  • Giai on 1976 - 1981

    Computer architecture HiepHV KTMT

    Commodore PET 2001

    Tandy TRS-80

    Osbourne

    Kaypro

  • 1981 IBM PC

    Computer architecture HiepHV KTMT

    Th h my tnh c nhn mi vi kin trc m IBM

  • 1984 Apple Macintos

    Computer architecture HiepHV KTMT

  • 1990 nay: Personal Computers

    Computer architecture HiepHV KTMT

    Tc vi x l tng nhanh:

    CPU 1 li,

    CPU a li

    Kin trc t thay i

  • Lut moore

    Computer architecture HiepHV KTMT

    Gordon Moore: Ngi ng sng lp intel

    S lng transistor trn chip s tng gp i sau 18 thng

    Gi thnh chip th hu nh khng i

    Mt cao hn

    Tc nhanh hn

    in nng tiu th t hn

    Tng tin cy

  • S pht trin ca Intel

    Computer architecture HiepHV KTMT

    4004: B vi x l u tin

    4 bt

    8080: B x l a nng u tin

    8 bit

    8086: 5Mhz tch hp 29,000 transistor

    Bus d liu ngoi: 16 bit

    8088: ging vi 8080, bus d liu ngoi 8 bt

  • S pht trin ca Intel

    Computer architecture HiepHV KTMT

    80286: nh a ch b nh c 16Mbyte

    80386: 32 bit

    H tr a nhim

    80486 Tng cng b nh cache

    H tr pipe line

    C b ng x l ton trn chip

  • S pht trin ca intel

    Computer architecture HiepHV KTMT

    Pentium Siu v hng (super scalar)

    Bus d liu 64 bit

    a lnh c thc hin song song

    Pentium Pro Tng cng chc nng v hng

    D on r nhnh

    Phn tch lung d liu

    Suy on ng

  • S pht trin ca Intel

    Computer architecture HiepHV KTMT

    Pentium II X l ha, video, audio

    Pentium III Thm cc lnh x l du chm ng cho ha 3D

    Pentium IV Tng cng x l du chm ng v multimedia

    Dual core: 2 b x l trn 1 chip

    Core 2 dual: Kin trc 64 bit

    Core 2 quard: 4 b x l trn chip: tch hp 820,000,000 transistor

  • My tnh th h 5

    Computer architecture HiepHV KTMT

    Cc my tnh thng minh, c kh nng t duy nh b c con ngi

  • Xu hng ngy nay

    Computer architecture HiepHV KTMT

    Nhanh hn

    Nh hn

    R hn

    D s dng hn

  • 62

    Cu trc my tnh

    Chng 2

    BIU DIN D LIU

    & S HC MY TNH

  • 63

    Ni dung chng 2

    2.1. Cc h m c bn

    2.2. M ha v lu tr d liu trong my tnh

    2.3. Biu din s nguyn

    2.4. Cc php ton s hc vi s nguyn

    2.5. Biu din s thc

    2.6. Biu din k t

  • 64

    Cc h m c bn

    V mt ton hc, ta c th biu din s theo h m c s bt k.

    Khi nghin cu v my tnh, ta ch quan tm n cc h m sau y:

    H thp phn (Decimal System) con ngi s dng

    H nh phn (Binary System) my tnh s dng

    H mi su (Hexadecimal System) dng vit gn cho s nh phn

  • 65

    H thp phn

    n

    mi

    i

    i

    m

    m

    n

    n

    n

    n

    aA

    aaaaaaA

    10

    10...101010...1010 110

    0

    1

    1

    1

    1

    S dng 10 ch s: 0,1,2,3,4,5,6,7,8,9 biu din s

    Dng n ch s thp phn c th biu din c 10n gi tr khc nhau:

    00...000 = 0

    ....

    99...999 = 10n-1

    Gi s mt s A c biu din di dng: A = an an-1 a1 a0 . a-1 a-2 a-m

    Gi tr ca A c hiu nh sau:

  • 66

    V d

    S thp phn 472.38 c gi tr c hiu nh sau: 472.38 = 4 x 102 + 7 x 101 + 2 x 100 + 3 x 10-1 + 8 x 10-2

  • 67

    M rng cho h c s r (r>1)

    S dng r ch s c gi tr ring t 0 n r-1 biu din s

    Gi s c s A c biu din bng cc ch s ca h m theo c s r nh sau:

    A = an an-1 a1 a0 . a-1 a-2 a-m

    Gi tr ca A l:

    Mt chui n ch s ca h m c s r s biu din c rn gi tr khc nhau.

    n

    mi

    i

    i

    m

    m

    n

    n

    n

    n

    raA

    rararararararaA ...... 221

    1

    0

    0

    1

    1

    1

    1

  • 68

    H nh phn

    S dng 2 ch s: 0,1

    Ch s nh phn gi l bit (binary digit)

    Bit l n v thng tin nh nht

    Dng n bit c th biu din c 2n gi tr khc nhau: 00...000 = 0

    ...

    11...111 = 2n-1

    Gi s c s A c biu din theo h nh phn nh sau: A = an an-1 a1 a0 . a-1 a-2 a-m

    Vi ai l cc ch s nh phn, khi gi tr ca A l:

    n

    mi

    i

    i

    m

    m

    n

    n

    n

    n

    aA

    aaaaaaaA

    2

    2...2222...22 221

    1

    0

    0

    1

    1

    1

    1

  • 69

    V d

    S nh phn 1101001.1011 c gi tr c xc nh nh sau:

    1101001.1011(2) = 26 + 25 + 23 + 20 + 2-1 + 2-3 + 2-4

    = 64 + 32 + 8 + 1 + 0.5 + 0.125 + 0.0625 = 105.6875(10)

  • 70

    i s thp phn sang nh phn

    Thc hin chuyn i phn nguyn v phn l ring.

    Chuyn i phn nguyn: Cch 1: chia dn s cho 2, xc nh cc phn d, ri vit cc s

    d theo chiu ngc li.

    V d: chuyn i 105(10) sang h nh phn ta lm nh sau:

    105 : 2 = 52 d 1

    52 : 2 = 26 d 0

    26 : 2 = 13 d 0

    13 : 2 = 6 d 1

    6 : 2 = 3 d 0

    3 : 2 = 1 d 1

    1 : 2 = 0 d 1

    Nh vy, ta c: 105(10) = 1101001(2)

  • 71

    i s thp phn sang nh phn

    Chuyn i phn nguyn (tip): Cch 2: phn tch s thnh tng cc ly tha ca 2, sau da

    vo cc s m xc nh dng biu din nh phn.

    V d: 105 = 64 + 32 + 8 + 1 = 26 + 25 + 23 + 20

    105(10) = 1101001(2)

    Chuyn i phn l: Nhn phn l vi 2 ri ly phn nguyn ... Sau vit cc phn

    nguyn theo chiu thun.

    V d: chuyn i s 0.6875(10) sang h nh phn:

    0.6875 x 2 = 1.3750 phn nguyn = 1

    0.375 x 2 = 0.750 phn nguyn = 0

    0.75 x 2 = 1.50 phn nguyn = 1

    0.5 x 2 = 1.0 phn nguyn = 1

    Kt qu l: 0.6875(10) = 0.1011(2)

  • 72

    3. H mi su (Hexa)

    S dng 16 ch s, k hiu nh sau:

    0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F

    Dng vit gn cho s nh phn.

  • 73

    Mt s v d

    Nh phn Hexa: 11 1011 1110 0110(2) = 3BE6(16) Hexa Nh phn: 3E8(16) = 11 1110 1000(2) Thp phn Hexa: 14988 ?

    14988 : 16 = 936 d 12 tc l C

    936 : 16 = 58 d 8

    58 : 16 = 3 d 10 tc l A

    3 : 16 = 0 d 3

    Nh vy, ta c: 14988(10) = 3A8C(16)

    Hexa Thp phn: 3A8C ? 3A8C (16) = 3 x 16

    3 + 10 x 162 + 8 x 161 +12 x 160

    = 12288 + 2560 + 128 + 12 = 14988(10)

  • 74

    Cng tr s Hexa

    8A9B

    37CD

    C268

    +B46E

    1AC9

    99A5

    -B7E5

    2AF9+

    FA9D

    2BC5-

    B800

    0FFF+

    8E9A

    3FE2-

    1234

    ABCD+

    4B6D

    3FEA-

    CFFF

    1FFF+

    A78D

    45FB-

    879D

    5DF8+

    98BA

    8A9D-

    E2DE CED8

  • 75

    Ni dung chng 2

    2.1. Cc h m c bn

    2.2. M ha v lu tr d liu trong my tnh

    2.3. Biu din s nguyn

    2.4. Cc php ton s hc vi s nguyn

    2.5. Biu din s thc

    2.6. Biu din k t

  • 76

    M ha v lu tr d liu

    1. Nguyn tc chung v m ha d liu

    2. Lu tr thng tin trong b nh chnh

  • 77

    1. Nguyn tc chung v m ha d liu

    Mi d liu a vo my tnh u phi c m ha thnh s nh phn.

    Cc loi d liu : D liu nhn to: do con ngi quy c

    D liu t nhin: tn ti khch quan vi con ngi

  • 78

    Nguyn tc m ha d liu

    M ha d liu nhn to: D liu s nguyn: m ha theo chun qui c

    D liu s thc: m ha bng s du chm ng

    D liu k t: m ha theo b m k t

  • 79

    Nguyn tc m ha d liu (tip)

    M ha d liu t nhin: Ph bin l cc tn hiu vt l nh m thanh, hnh nh, ...

    Cc d liu t nhin cn phi c s ha (digitalized) trc khi a vo trong my tnh.

    S m ha v ti to tn hiu vt l:

    B cm bin

    tn hiu

    (sensor)

    B chuyn i

    t-ng t - s

    (ADC)

    Tn hiu vt lTn hiu in

    lin tc Tn hiu s

    My tnh

    B ti to

    tn hiu

    B chuyn i

    s - t-ng t

    (DAC)

    Tn hiu vt lTn hiu in

    lin tc Tn hiu s

  • 80

    di t d liu

    di t d liu: L s bit c s dng m ha loi d liu tng

    ng

    Trong thc t, di t d liu thng l bi s ca 8 bit, v d: 8, 16, 32, 64 bit

  • 81

    2. Lu tr thng tin trong b nh chnh

    B nh chnh thng c t chc theo Byte

    di t d liu c th chim 1 hoc nhiu Byte

    Cn phi bit th t lu tr cc byte trong b nh chnh: Lu tr kiu u nh (Little-endian)

    Lu tr kiu u to (Big-endian)

    Little-endian: Byte c ngha thp hn c lu tr trong b nh v tr c a ch nh hn.

    Big-endian: Byte c ngha thp hn c lu tr trong b nh v tr c a ch ln hn.

  • 82

    V d

    Intel 80x86, Pentium: Little-endian

    Motorola 680x0, cc b x l RISC: Big-endian

    Power PC, Itanium: h tr c hai (Bi-endian)

  • 83

    Bi tp

    D liu 16 bit c gi tr l 5B9D c lu tr vo b nh chnh t chc theo kiu Little-endian bt u t byte nh c a ch l 1234. Hy xc nh ni dung cc byte nh cha lu tr d liu di dng nh phn.

  • 84

    Ni dung chng 2

    2.1. Cc h m c bn

    2.2. M ha v lu tr d liu trong my tnh

    2.3. Biu din s nguyn

    2.4. Cc php ton s hc vi s nguyn

    2.5. Biu din s thc

    2.6. Biu din k t

  • 85

    Biu din s nguyn

    1. S nguyn khng du

    2. S nguyn c du

    3. Biu din s nguyn theo m BCD

  • 86

    1. S nguyn khng du

    Dng tng qut: gi s dng n bit biu din cho mt s nguyn khng du A:

    an-1an-2...a3a2a1a0

    Gi tr ca A c tnh nh sau:

    Di biu din ca A: t 0 n 2n-1

    1

    0

    0

    0

    1

    1

    2

    2

    1

    1

    2

    22...22

    n

    i

    i

    i

    n

    n

    n

    n

    aA

    aaaaA

  • 87

    Cc v d

    V d 1. Biu din cc s nguyn khng du sau y bng 8 bit:

    A = 45 B = 156

    Gii:

    A = 45 = 32 + 8 + 4 + 1 = 25 + 23 + 22 + 20

    A = 0010 1101

    B = 156 = 128 + 16 + 8 + 4 = 27 + 24 + 23 + 22

    B = 1001 1100

  • 88

    Cc v d (tip)

    V d 2. Cho cc s nguyn khng du X, Y c biu din bng 8 bit nh sau:

    X = 0010 1011

    Y = 1001 0110

    Gii:

    X = 0010 1011 = 25 + 23 + 21 + 20

    = 32 + 8 + 2 + 1 = 43

    Y = 1001 0110 = 27 + 24 + 22 + 21

    = 128 + 16 + 4 + 2 = 150

  • 89

    Trng hp c th: vi n = 8 bit

    Di biu din l [0, 255]

    0000 0000 = 0 0000 0001 = 1

    0000 0010 = 2

    0000 0011 = 3

    .....

    1111 1111 = 255

    Trc s hc:

    0 12

    3

    255254

    Trc s hc my tnh:

    0 1 2 255

  • 90

    Vi n = 8 bit

    Kiu d liu tng ng trong Turbo C l kiu unsigned char.

    V d: unsigned char a;

    a = 255;

    a = a + 1;

    printf(%d,a); //Kt qu sai l 0

    1111 1111

    + 0000 0001

    1 0000 0000

    KQ sai: 255 + 1 = 0 ?

    (do php cng b nh ra ngoi)

  • 91

    Vi n = 16 bit, 32 bit, 64 bit

    n = 16 bit: Di biu din l [0, 65535]

    Kiu d liu tng ng trong Turbo C l kiu unsigned int

    V d:

    unsigned int a;

    a = 0xffff;

    a = a + 1;

    printf(%d,a);

    n = 32 bit: Di biu din l [0, 232-1]

    n = 64 bit: Di biu din l [0, 264-1]

  • 92

    2. S nguyn c du

    a. Khi nim v s b

    S b chn v s b mi (h thp phn): Gi s c mt s nguyn thp phn A c biu din

    bi n ch s thp phn. Khi ta c:

    S b chn ca A = (10n - 1) - A

    S b mi ca A = 10n - A

    NX: S b mi = S b chn + 1

    V d:

    Xt n = 4 ch s, A = 2874

    S b chn ca A = (104 - 1) - 2874 = 7125

    S b mi ca A = 104 - 2874 = 7126

  • 93

    Khi nim v s b

    S b mt v s b hai (h nh phn): Gi s c mt s nguyn nh phn A c biu din bi

    n bit. Khi ta c:

    S b mt ca A = (2n - 1) - A

    S b hai ca A = 2n - A

    NX: S b hai = S b mt + 1

    V d:

    Xt n = 4 bit, A = 0110

    S b mt ca A = (24 - 1) - 0110 = 1001

    S b hai ca A = 24 - 0110 = 1010

  • 94

    Nhn xt

    C th tm s b mt ca A bng cch o tt c cc bit ca A

    S b hai ca A = S b mt ca A + 1

  • 95

    Nhn xt

    V d:

    cho A =0110 0101

    S b mt ca A =1001 1010

    + 1

    S b hai ca A =1001 1011

    Nhn xt

    A = 0110 0101

    S b hai ca A += 1001 1011

    1 0000 0000 = 0 (b qua bit nh ra ngoi)

    ->S b hai ca A=-A

  • 96

    Biu din s nguyn c du

    b. Biu din s nguyn c du bng s b hai

    Dng n bit biu din s nguyn c du A:

    an-1an-2...a2a1a0

    Vi s dng: Bit an-1 = 0

    Cc bit cn li biu din ln ca s dng

    Dng tng qut ca s dng: 0an-2...a2a1a0 Gi tr ca s dng:

    Di biu din ca s dng: [0, 2n-1-1]

    2

    0

    2n

    i

    i

    iaA

  • 97

    Biu din s nguyn c du (tip)

    Vi s m: c biu din bng s b hai ca s dng tng ng

    Bit an-1 = 1

    Dng tng qut ca s m: 1an-2...a2a1a0 Gi tr ca s m:

    Di biu din ca s m: [-2n-1, -1]

    Di biu din ca s nguyn c du n bit l [-2n-1, 2n-1-1]

    2

    0

    1 22n

    i

    i

    i

    n aA

  • 98

    Biu din s nguyn c du (tip)

    Dng tng qut ca s nguyn c du A:

    an-1an-2...a2a1a0

    Gi tr ca A c xc nh nh sau:

    Di biu din: [-2n-1, 2n-1-1]

    2

    0

    1

    1 22n

    i

    i

    i

    n

    n aaA

  • 99

    Cc v d

    V d 1. Biu din cc s nguyn c du sau y bng 8 bit A = +50 B = -70

    Gii: A = +50 = 32 + 16 + 2 = 25 + 24 + 21

    A = 0011 0010

    B = -70

    Ta c: +70 = 64 + 4 + 2 = 26 + 22 + 21

    +70 = 0100 0110

    S b 1 = 1011 1001 + 1

    S b 2 = 1011 1010 B = 1011 1010

  • 100

    Cc v d (tip)

    V d 2. Xc nh gi tr ca cc s nguyn c du 8 bit sau y:

    A = 0101 0110

    B = 1101 0010

    Gii:

    A = 26 + 24 + 22 + 21 = 64 + 16 + 4 + 2 = +86

    B = -27 + 26 + 24 + 21 = -128 + 64 + 16 + 2 = -46

  • 101

    Trng hp c th: vi n = 8 bit

    Di biu din l [-128, +127]

    0000 0000 = 0 0000 0001 = +1

    0000 0010 = +2

    ..

    0111 1111 = +127

    1000 0000 = -128

    1000 0001 = -127

    .....

    1111 1110 = -2

    1111 1111 = -1

    Trc s hc:

    Trc s hc my tnh:

    0-2 -1 127-128 1 2

    0 +1+2

    +127

    -1-2

    -128

  • 102

    Vi n = 8 bit (tip)

    Kiu d liu tng ng trong Turbo C l kiu char.

    V d: char a;

    a = 127;

    a = a + 1;

    printf(%d,a); //Kt qu sai l -128

    0111 1111

    + 0000 0001

    1000 0000

    KQ sai: 127 + 1 = -128 ?

    (do php cng b trn s hc)

  • 103

    Vi n = 16 bit, 32 bit, 64 bit

    n = 16 bit: Di biu din l [-32768, +32767]

    Kiu d liu tng ng trong Turbo C l kiu int

    n = 32 bit: Di biu din l [-231, 231-1]

    Kiu d liu tng ng trong Turbo C l kiu long int

    n = 64 bit: Di biu din l [-263, 263-1]

  • 104

    Chuyn t 8 bit sang 16 bit

    Vi s dng:

    +35 = 0010 0011 (8 bit)

    +35 = 0000 0000 0010 0011 (16 bit)

    Thm 8 bit 0 vo bn tri

    Vi s m:

    -79 = 1011 0001 (8 bit)

    -79 = 1111 1111 1011 0001 (16 bit)

    Thm 8 bit 1 vo bn tri

    Kt lun: m rng sang bn tri 8 bit bng bit du

  • 105

    3. Biu din s nguyn theo m BCD

    BCD Binary Coded Decimal (M ha s nguyn thp phn bng nh phn)

    Dng 4 bit m ha cho cc ch s thp phn t 0 n 9 0 0000 5 0101

    1 0001 6 0110

    2 0010 7 0111

    3 0011 8 1000

    4 0100 9 1001

    C 6 t hp khng s dng: 1010, 1011, 1100, 1101, 1110, 1111

  • 106

    V d v s BCD

    35 0011 0101BCD 79 0111 1001BCD 2281 0010 0010 1000 0001BCD 1304 0001 0011 0000 0100BCD

  • 107

    Php cng s BCD

    35 0011 0101BCD + 24 + 0010 0100BCD 59 0101 1001BCD Kt qu ng (khng phi hiu chnh)

    89 1000 1001BCD + 52 + 0101 0010BCD 141 1101 1011 kt qu sai + 0110 0110 hiu chnh 0001 0100 0001BCD kt qu ng 1 4 1

    Hiu chnh: cng thm 6 nhng hng c nh

  • 108

    Cc kiu lu tr s BCD

    BCD dng nn (Packed BCD): Hai s BCD c lu tr trong 1 Byte.

    V d s 52 c lu tr nh sau:

    BCD dng khng nn (Unpacked BCD): Mi s BCD c lu tr trong 4 bit thp ca mi Byte.

    V d s 52 c lu tr nh sau:

    0101 0010

    0101 0010

  • 109

    Ni dung chng 2

    2.1. Cc h m c bn

    2.2. M ha v lu tr d liu trong my tnh

    2.3. Biu din s nguyn

    2.4. Cc php ton s hc vi s nguyn

    2.5. Biu din s thc

    2.6. Biu din k t

  • 110

    Cc php ton s hc vi s nguyn

    1. B cng

    2. Cng s nguyn khng du

    3. Cng/tr s nguyn c du

    4. Nhn s nguyn

    5. Chia s nguyn

  • 111

    1. B cng

    B cng 1 bit ton phn (Full Adder)

  • 112

    B cng (tip)

    B cng n bit

  • 113

    2. Cng s nguyn khng du

    Nguyn tc: S dng b cng n bit cng 2 s nguyn khng du n bit, kt qu nhn c cng l n bit.

    Nu khng c nh ra khi bit cao nht (Cout=0) th kt qu nhn c l ng.

    Nu c nh ra khi bit cao nht (Cout=1) th kt qu nhn c l sai, khi xy ra hin tng nh ra ngoi.

    Hin tng nh ra ngoi (Carry-out) xy ra khi tng ca 2 s nguyn khng du n bit > 2n-1

  • 114

    VD cng s nguyn khng du 8 bit

    Trng hp khng xy ra carry-out: X = 1001 0110 = 150

    Y = 0001 0011 = 19

    S = 1010 1001 = 169

    Cout = 0

    Trng hp c xy ra carry-out: X = 1100 0101 = 197

    Y = 0100 0110 = 70

    S = 0000 1011 267

    Cout = 1 carry-out

    (KQ sai = 23 + 21 + 20 = 11)

    unsigned char x, y, s;

    x = 197;

    y = 70;

    s = x + y;

    printf(%d,s);

  • 115

    3. Cng/tr s nguyn c du

    Khi cng hai s nguyn c du n bit, ta khng quan tm n bit Cout v kt qu nhn c cng l n bit.

    Cng hai s khc du: kt qu lun ng

    Cng hai s cng du:

    Nu tng nhn c cng du vi 2 s hng th kt qu l ng

    Nu tng nhn c khc du vi 2 s hng th xy ra hin tng trn s hc (Overflow) v kt qu nhn c l sai

    Trn s hc xy ra khi tng thc s ca hai s nm ngoi di biu din ca s nguyn c du n bit: [-2n-1, 2n-1-1]

  • 116

    Php tr s nguyn c du

    Nguyn tc thc hin php tr: Ta c: X Y = X + (-Y)

    Cch thc hin: ly X cng vi s b 2 ca Y

    B cng n-bit

    Y X

    S

    B hai

    n-bit n-bit

    n-bit

  • 117

    V d cng 2 s nguyn c du (khng trn)

  • 118

    V d cng 2 s nguyn c du (Overflow)

  • 119

    4. Nhn s nguyn

    a. Nhn s nguyn khng du

    b. Nhn s nguyn c du

  • 120

    a. Nhn s nguyn khng du

    Cc tch ring phn c xc nh nh sau: Nu bit ca s nhn = 0 tch ring phn = 0

    Nu bit ca s nhn = 1 tch ring phn = s b nhn

    Tch ring phn tip theo c dch tri 1 bit so vi tch ring phn trc

    Tch = tng cc tch ring phn

    Nhn 2 s nguyn n bit, tch c di 2n bit khng trn

  • 121

    B nhn s nguyn khng du

    Mn-1 ... M1 M0

    B cng n bit

    An-1 ... A1 A0 Qn-1 ... Q1 Q0C

    B iu khin dch v cng

    iu khin cng

    iu khin dch phi

    S b nhn M

    S nhn Q

  • 122

    Lu thc hin

    Bt u

    C, A 0

    M S b nhnQ S nhnB m n

    Q0 = 1 ? C, A A M

    Dch phi C, A, QB m B m - 1

    B m = 0 ? Kt thc

    S

    S

  • 123

    V d nhn s nguyn khng du

    M = 1011 (11 - S b nhn) Q = 1101 (13 - S nhn) = 1000 1111 (143 - Tch)

    C A Q 0 0000 1101 Cc gi tr khi u + 1011

    0 1011 1101 A A + M 0 0101 1110 Dch phi

    0 0010 1111 Dch phi + 1011

    0 1101 1111 A A + M 0 0110 1111 Dch phi + 1011

    1 0001 1111 A A + M 0 1000 1111 Dch phi

  • 124

    b. Nhn s nguyn c du

    S dng thut gii nhn khng du: Bc 1: Chuyn i s nhn v s b nhn thnh s

    dng tng ng.

    Bc 2: Nhn 2 s bng thut gii nhn s nguyn khng du c tch 2 s dng.

    Bc 3: Hiu chnh du ca tch:

    Nu 2 tha s ban u cng du th tch nhn c bc 2 l kt qu cn tnh.

    Nu 2 tha s ban u khc du nhau th kt qu l s b 2 ca tch nhn c bc 2.

  • 125

    Nhn s nguyn c du

    S dng thut gii Booth: Vi s nhn dng:

    Ta c: 2i + 2i-1 + + 2j = 2i+1 - 2j (vi ij)

    VD: M * 01110010 = M * (27 24 + 22 21)

    Quy tc: duyt t tri sang phi:

    Nu gp 10 th tr A i M ri dch phi

    Nu gp 01 th cng A vi M ri dch phi

    Nu gp 00 hay 11 th ch dch phi

    Vi s nhn m:

    Ta c: 1110ak-1ak-2a0 = -2

    n-1 + 2n-2 + + 2k+1 + ak-12k-1 + + a02

    0

    = -2n-1 + 2n-1 - 2k+1 + ak-12k-1 + + a02

    0

    -2k+1 ng vi bit 10 nn vn m bo quy tc TH trn

  • 126

    Lu thc hin thut ton Booth

    Bt u

    A 0

    Q-1 0

    M S b nhnQ S nhnB m n

    Q0Q-1

    A A M

    Dch phi A, Q, Q-1(Gi nguyn bit du ca A)

    B m B m - 1

    B m = 0 ? Kt thc

    = 01

    S

    A A M

    = 10

    = 00 / 11

    A Q Q-1

  • 127

    V d v thut ton Booth

    V d 1:

    n = 4 bit, M = +7, Q = +3

    M = 0111, Q = 0011, -M = 1001

    A Q Q-1

    0000 0011 0 ; khi to

    +1001

    1001 0011 0 ; A A - M

    1100 1001 1 ; dch phi

    1110 0100 1 ; dch phi

    +0111

    10101 0100 1 ; A A + M

    0010 1010 0 ; dch phi

    0001 0101 0 ; dch phi

    V d 2:

    n = 4 bit, M = +7, Q = -3

    M = 0111, Q = 1101, -M = 1001

    A Q Q-1

    0000 1101 0 ; khi to

    +1001

    1001 1101 0 ; A A - M

    1100 1110 1 ; dch phi

    +0111

    10011 1110 1 ; A A + M

    0001 1111 0 ; dch phi

    +1001

    1010 1111 0 ; A A - M

    1101 0111 1 ; dch phi

    1110 1011 1 ; dch phi

  • 128

    5. Chia s nguyn

    a. Chia s nguyn khng du

    b. Chia s nguyn c du

  • 129

    a. Chia s nguyn khng du

    V d:

  • 130

    B chia s nguyn khng du

    Mn-1 ... M1 M0

    B cng/tr n bit

    An-1 ... A1 A0 Qn-1 ... Q1 Q0

    B logic iu khincng, tr v dch

    iu khin cng/tr

    iu khin dch tri

    S chia M

    S b chia Q

  • 131

    Lu thc hin

    Bt u

    A 0

    M S chiaQ S b chia

    B m 0

    A < 0 ?

    Q0 0

    A A M

    Dch tri A, Q

    B m = 0 ? Kt thc

    S

    A A M

    Q0 1

    B m B m - 1

    S

  • 132

    b. Chia s nguyn c du

    Bc 1: Chuyn i s chia v s b chia thnh s dng tng ng

    Bc 2: S dng thut gii chia s nguyn khng du chia 2 s dng, kt qu nhn c l thng Q v phn d R u dng

    Bc 3: Hiu chnh du kt qu theo quy tc sau:

  • 133

    Ni dung chng 2

    2.1. Cc h m c bn

    2.2. M ha v lu tr d liu trong my tnh

    2.3. Biu din s nguyn

    2.4. Cc php ton s hc vi s nguyn

    2.5. Biu din s thc

    2.6. Biu din k t

  • 134

    Biu din s thc

    1. Khi nim v s du chm tnh

    2. Khi nim v s du chm ng

    3. Chun IEEE 754/85

  • 135

    Biu din s thc

    Quy c: "du chm" (point) c hiu l k hiu ngn cch gia phn nguyn v phn l ca 1 s thc.

    C 2 cch biu din s thc trong my tnh: S du chm tnh (fixed-point number):

    Du chm l c nh (s bit dnh cho phn nguyn v phn l l c nh)

    Dng trong cc b vi x l hay vi iu khin th h c.

    S du chm ng (floating-point number):

    Du chm khng c nh

    Dng trong cc b vi x l hin nay, c chnh xc cao hn.

  • 136

    1. Khi nim v s du chm tnh

    S bit dnh cho phn nguyn v s bit phn l l c nh.

    Gi s rng: U(a,b) l tp cc s du chm tnh khng du c a bit

    trc du chm v b bit sau du chm.

    A(a,b) l tp cc s du chm tnh c du c a bit (khng k bit du) trc du chm v b bit sau du chm.

  • 137

    S du chm tnh khng du

    Khong xc nh ca s du chm tnh khng du: [0, 2a - 2-b]

    V d: Dng 8 bit m ha cho kiu s du chm tnh, trong

    c 2 bit dnh cho phn l. Khong xc nh ca kiu d liu ny l: 0 R 26 2-2 = 63.75

    VD: gi tr ca 101011.11 = 10101111 x 2-2 = 43.75

  • 138

    S du chm tnh c du

    Khong xc nh ca s du chm tnh c du: [-2a, 2a - 2-b]

    V d: Dng 8 bit biu din s chm tnh c du vi a=5, b=2

    Ta c tp cc s chm tnh thuc A(5,2) nm trong khong: [-25, 25 2-2] hay [-32, 31.75]

  • 139

    c im ca s du chm tnh

    Cc php ton thc hin nhanh.

    chnh xc khi thc hin cc php ton khng cao, c bit l vi php tnh nhn.

    V d: Khi thc hin php nhn ta cn phi c thm mt s

    lng bit nht nh biu din kt qu.

    i vi s khng du: U(a1, b1) x U(a2, b2) = U(a1 + a2, b1 + b2)

    i vi s c du: A(a1, b1) x A(a2, b2) = A(a1 + a2 + 1, b1 + b2)

  • 140

    2. Khi nim v s du chm ng

    Floating Point Number biu din cho s thc

    Mt s thc X c biu din theo kiu s du chm ng nh sau:

    X = M * RE

    Trong :

    M l phn nh tr (Mantissa)

    R l c s (Radix)

    E l phn m (Exponent)

    Vi R c nh th lu tr X ta ch cn lu tr M v E (di dng s nguyn)

  • 141

    3. Chun IEEE 754/85

    L chun m ha s du chm ng

    C s R = 2

    C cc dng c bn:

    Dng c chnh xc n, 32-bit

    Dng c chnh xc kp, 64-bit

    Dng c chnh xc kp m rng, 80-bit

    Khun dng m ha:

    S me

    79 63 078 64

    S me

    31 22 030 23

    S me

    63 51 062 52

  • 142

    Khun dng m ha

    S l bit du, S=0 l s dng, S=1 l s m.

    e l m lch (excess) ca phn m E, tc l: E = e b

    Trong b l lch (bias):

    Dng 32-bit : b = 127, hay E = e - 127

    Dng 64-bit : b = 1023, hay E = e - 1023

    Dng 80-bit : b = 16383, hay E = e - 16383

    m l cc bit phn l ca phn nh tr M, phn nh tr c ngm nh nh sau: M = 1.m

    Cng thc xc nh gi tr ca s thc tng ng l:

    X = (-1)S x 1.m x 2e-b

  • 143

    V d v s du chm ng

    V d 1: C mt s thc X c dng biu din nh phn theo chun IEEE 754 dng 32 bit nh sau:

    1100 0001 0101 0110 0000 0000 0000 0000

    Xc nh gi tr thp phn ca s thc .

    Gii: S = 1 X l s m

    e = 1000 0010 = 130

    m = 10101100...00

    Vy X = (-1)1 x 1.10101100...00 x 2130-127

    = -1.101011 x 23 = -1101.011 = -13.375

  • 144

    V d v s du chm ng (tip)

    V d 2: Xc nh gi tr thp phn ca s thc X c dng biu din theo chun IEEE 754 dng 32 bit nh sau:

    0011 1111 1000 0000 0000 0000 0000 0000

    Gii:

  • 145

    V d v s du chm ng (tip)

    V d 3: Biu din s thc X = 9.6875 v dng s du chm ng theo chun IEEE 754 dng 32 bit

    Gii:

    X = 9.6875(10) = 1001.1011(2) = 1.0011011 x 23

    Ta c:

    S = 0 v y l s dng

    E = e 127 nn e = 127 + 3 = 130(10) = 1000 0010(2) m = 001101100...00 (23 bit)

    Vy:

    X = 0100 0001 0001 1011 0000 0000 0000 0000

  • 146

    Cc quy c c bit

    Nu tt c cc bit ca e u bng 0, cc bit ca m u bng 0, th X = 0

    Nu tt c cc bit ca e u bng 1, cc bit ca m u bng 0, th X =

    Nu tt c cc bit ca e u bng 1, m c t nht mt bit bng 1, th X khng phi l s (not a number - NaN)

  • 147

    Trc s biu din

    Dng 32 bit: a = 2-127 10-38 b = 2+127 10+38

    Dng 64 bit: a = 2-1023 10-308 b = 2+1023 10+308

    Dng 80 bit: a = 2-16383 10-4932 b = 2+16383 10+4932

    -0 +0-a b-b a

    underflowoverflow overflow

  • 148

    Thc hin cc php ton

    X1 = M1 * RE1

    X2 = M2 * RE2

    Ta c X1 X2 = (M1 * R

    E1-E2 M2) * RE2 , vi E2 E1

    X1 * X2 = (M1 * M2) * RE1+E2

    X1 / X2 = (M1 / M2) * RE1-E2

  • 149

    Cc kh nng trn s

    Trn trn s m (Exponent Overflow): m dng vt ra khi gi tr cc i ca s m dng c th.

    Trn di s m (Exponent Underflow): m m vt ra khi gi tr cc i ca s m m c th.

    Trn trn phn nh tr (Mantissa Overflow): cng hai phn nh tr c cng du, kt qu b nh ra ngoi bit cao nht.

    Trn di phn nh tr (Mantissa Underflow): Khi hiu chnh phn nh tr, cc s b mt bn phi phn nh tr.

  • 150

    Php cng v php tr

    Kim tra cc s hng c bng 0 hay khng Nu c th gn kt qu da trn s cn li.

    Hiu chnh phn nh tr Sao cho 2 s c phn m ging nhau: tng s m nh v dch phi

    phn nh tr tng ng (dch phi hn ch sai s nu c).

    VD: 1.01 * 23 + 1.11 = 1.01 * 23 + 0.00111 * 23

    Cng hoc tr phn nh tr Nu trn th dch phi v tng s m, nu b trn s m th bo li

    trn s.

    Chun ha kt qu Dch tri phn nh tr bit tri nht (bit MSB) khc 0.

    Tng ng vi vic gim s m nn c th dn n hin tng trn di s m.

  • 151

    Ni dung chng 2

    2.1. Cc h m c bn

    2.2. M ha v lu tr d liu trong my tnh

    2.3. Biu din s nguyn

    2.4. Cc php ton s hc vi s nguyn

    2.5. Biu din s thc

    2.6. Biu din k t

  • 152

    Biu din k t trong my tnh

    1. B m ASCII (American Standard Code for Information Interchange)

    2. B m Unicode

  • 153

    1. B m ASCII

    Do ANSI (American National Standard Institute) thit k

    L b m 8 bit m ha c cho 28 = 256 k t, c m t 0016 FF16, bao gm:

    128 k t chun c m t 0016 7F16 128 k t m rng c m t 8016 FF16

  • 154

    HEXA 0 1 2 3 4 5 6 7

    0

    0

    16

    32

    0

    48

    @

    64

    P

    80

    `

    96

    p

    112

    1

    1

    17

    !

    33

    1

    49

    A

    65

    Q

    81

    a

    97

    q

    113

    2

    2

    18

    "

    34

    2

    50

    B

    66

    R

    82

    b

    98

    r

    114

    3

    3

    19

    #

    35

    3

    51

    C

    67

    S

    83

    c

    99

    s

    115

    4

    4

    20

    $

    36

    4

    52

    D

    68

    T

    84

    d

    100

    t

    116

    5

    5

    21

    %

    37

    5

    53

    E

    69

    U

    85

    e

    101

    u

    117

    6

    6

    22

    &

    38

    6

    54

    F

    70

    V

    86

    f

    102

    v

    118

    7

    7

    23

    '

    39

    7

    55

    G

    71

    W

    87

    g

    103

    w

    119

    8

    8

    24

    (

    40

    8

    56

    H

    72

    X

    88

    h

    104

    x

    120

    9

    9

    25

    )

    41

    9

    57

    I

    73

    Y

    89

    i

    105

    y

    121

    A

    10

    26

    *

    42

    :

    58

    J

    74

    Z

    90

    j

    106

    z

    122

    B

    11

    27

    +

    43

    ;

    59

    K

    75

    [

    91

    k

    107

    {

    123

    C

    12

    28

    ,

    44

    <

    60

    L

    76

    \

    92

    l

    108

    |

    124

    D

    13

    29

    -

    45

    =

    61

    M

    77

    ]

    93

    m

    109

    }

    125

    E

    14

    30

    .

    46

    >

    62

    N

    78

    ^

    94

    n

    110

    ~

    126

    F

    15

    31

    /

    47

    ?

    63

    O

    79

    -

    95

    o

    111

    127

  • 155

    a. Cc k t chun

    95 k t hin th c: c m t 2016 7E16 26 ch ci hoa Latin 'A' 'Z' c m t 4116 5A16 26 ch ci thng Latin 'a' 'z' c m t 6116 7A16 10 ch s thp phn '0' '9' c m t 3016 3916 Cc du cu: . , ? ! : ;

    Cc du php ton: + - * /

    Mt s k t thng dng: #, $, &, @, ...

    Du cch (m l 2016)

    33 m iu khin: m t 0016 1F16 v 7F16 dng m ha cho cc chc nng iu khin

  • 156

    iu khin nh dng

    BS Backspace - Li li mt v tr: K t iu khin con tr li li mt v tr.

    HT Horizontal Tab - Tab ngang: K t iu khin con tr dch tip mt khong nh trc.

    LF Line Feed - Xung mt dng: K t iu khin con tr chuyn xung dng di.

    VT Vertical Tab - Tab ng: K t iu khin con tr chuyn qua mt s dng nh trc.

    FF Form Feed - y sang u trang: K t iu khin con tr di chuyn xung u trang tip theo.

    CR Carriage Return - V u dng: K t iu khin con tr di chuyn v u dng hin hnh.

  • 157

    iu khin truyn s liu

    SOH Start of Heading - Bt u tiu : K t nh du bt u phn thng tin tiu .

    STX Start of Text - Bt u vn bn: K t nh du bt u khi d liu vn bn v cng chnh l kt thc phn thng tin tiu .

    ETX End of Text - Kt thc vn bn: K t nh du kt thc khi d liu vn bn c bt u bng STX.

    EOT End of Transmission - Kt thc truyn: Ch ra cho bn thu bit kt thc truyn.

    ENQ Enquiry - Hi: Tn hiu yu cu p ng t mt my xa.

    ACK Acknowledge - Bo nhn: K t c pht ra t pha thu bo cho pha pht bit rng d liu c nhn thnh cng.

    NAK Negative Aknowledge - Bo ph nhn: K t c pht ra t pha thu bo cho pha pht bit rng vic nhn d liu khng thnh cng.

    SYN Synchronous / Idle - ng b ha: c s dng bi h thng truyn ng b ng b ho qu trnh truyn d liu.

    ETB End of Transmission Block - Kt thc khi truyn: Ch ra kt thc khi d liu c truyn.

  • 158

    iu khin phn cch thng tin

    FS File Separator - K hiu phn cch tp tin: nh du ranh gii gia cc tp tin.

    GS Group Separator - K hiu phn cch nhm: nh du ranh gii gia cc nhm tin (tp hp cc bn ghi).

    RS Record Separator - K hiu phn cch bn ghi: nh du ranh gii gia cc bn ghi.

    US Unit Separator - K hiu phn cch n v: nh du ranh gii gia cc phn ca bn ghi.

  • 159

    Cc k t iu khin khc

    NUL Null - K t rng: c s dng in khong trng khi khng c d liu.

    BEL Bell - Chung: c s dng pht ra ting bp khi cn gi s ch ca con ngi.

    SO Shift Out - Dch ra: Ch ra rng cc m tip theo s nm ngoi tp k t chun cho n khi gp k t SI.

    SI Shift In - Dch vo: Ch ra rng cc m tip theo s nm trong tp k t chun.

    DLE Data Link Escape - Thot lin kt d liu: K t s thay i ngha ca mt hoc nhiu k t lin tip sau .

    DC1

    DC4

    Device Control - iu khin thit b : Cc k t dng iu khin cc thit b ph tr.

    CAN Cancel - Hy b: Ch ra rng mt s k t nm trc n cn phi b qua.

    EM End of Medium - Kt thc phng tin: Ch ra k t ngay trc n l k t cui cng c tc dng vi phng tin vt l.

    SUB Substitute - Thay th: c thay th cho k t no c xc nh l b li.

    ESC Escape - Thot: K t c dng cung cp cc m m rng bng cch kt hp vi k t sau .

    DEL Delete - Xa: Dng xa cc k t khng mong mun.

  • 160

    b. Cc k t m rng

    c nh ngha bi: Nh ch to my tnh

    Ngi pht trin phn mm

    V d: B m k t m rng ca IBM: c dng trn my tnh

    IBM-PC.

    B m k t m rng ca Apple: c dng trn my tnh Macintosh.

    Cc nh pht trin phn mm ting Vit cng thay i phn ny m ho cho cc k t ring ca ch Vit, v d nh b m TCVN 5712.

  • 161

    2. B m Unicode

    Do cc hng my tnh hng u thit k

    L b m 16-bit

    c thit k cho a ngn ng, trong c ting Vit

  • 162

    Bi tp 1

    Gi s c cc bin nh di y cha cc s nguyn c du 8-bit vi ni dung biu din theo h 16 nh sau:

    P = 3A Q = 7C R = DE S = FF

    Hy xc nh gi tr ca cc bin nh di dng s thp phn.

  • 163

    Bi tp 2

    Gi s c X thuc kiu s nguyn c du 16-bit, n c gn gi tr di dng thp phn bng -1234. Hy cho bit ni dung ca cc byte nh cha bin di dng Hexa, bit rng b nh lu tr theo kiu u nh (little-endian).

  • 164

    Bi tp 3

    Gi s c bin P cha s nguyn c du 16 bit. Ni dung ca bin P c cho trong b nh nh sau:

    Hy xc nh gi tr ca bin P di dng thp phn.

    9D(16)

    80(16)

    a ch tng dn

    (Little-endian)

  • 165

    Bi tp 4

    Gi s c mt bin s thc X c biu din bng s du chm ng theo chun IEEE 754 dng 32 bit, n chim 4 byte trong b nh vi ni dung c ch ra hnh v sau.

    Bit rng b nh t chc theo kiu u nh (little-endian), hy xc nh gi tr thp phn ca s thc .

    00(16)

    80(16) a ch tng dnD9(16)

    C3(16)

  • 166

    Bi tp 5

    Gi s c bin X thuc kiu s du chm ng theo chun IEEE 754 dng 32 bit. N c gn gi tr di dng thp phn bng -124.125 v lu tr vo b nh bt u t byte nh c a ch l 200. Hy cho bit ni dung ca cc byte nh cha bin di dng Hexa, bit rng b nh lu tr theo kiu u nh (little-endian).

  • 167

    Kin trc my tnh

    Chng 3

    H THNG MY TNH

  • 168

    Ni dung chng 3

    3.1. Cu trc v hot ng c bn ca my tnh

    3.2. B x l trung tm

    3.3. B nh my tnh

    3.4. H thng vo ra

    3.5. Gii thiu h iu hnh

  • 169

    Cu trc v hot ng c bn ca my tnh

    Cu trc c bn ca my tnh

    Lin kt h thng

    Hot ng c bn ca my tnh

    Cu trc mt my tnh c nhn in hnh

  • 170

    3.1.1 Cu trc c bn ca my tnh

    B x l trung tm (Central Processing Unit)

    B nh (Memory)

    H thng vo-ra (Input-Output System)

    Lin kt h thng (System Interconnection)

  • 171

    B x l trung tm (CPU)

    Chc nng: iu khin hot ng ca ton b h thng my tnh

    X l d liu

    Nguyn tc hot ng c bn: CPU hot ng theo chng trnh nm trong b nh chnh, bng cch:

    Nhn ln lt tng lnh t b nh chnh,

    Sau tin hnh gii m lnh v pht cc tn hiu iu khin thc thi lnh.

    Trong qu trnh thc thi lnh, CPU c th trao i d liu vi b nh chnh hay h thng vo-ra.

  • 172

    Cu trc c bn ca CPU

    n v iu khin(CU)

    n v s hc v logic(ALU)

    Tp cc thanh ghi(RF)

    n v ni ghp bus (BIU)

    Bus bn trong

    Bus bn ngoi

  • 173

    Cc thnh phn c bn ca CPU

    n v iu khin (Control Unit - CU): iu khin hot ng ca my tnh theo chng trnh nh sn.

    n v s hc v logic (Arithmetic and Logic Unit - ALU): thc hin cc php ton s hc v cc php ton logic trn cc d liu c th.

    Tp thanh ghi (Register File - RF): lu gi cc thng tin tm thi phc v cho hot ng ca CPU.

    Bus bn trong (Internal Bus): kt ni cc thnh phn bn trong CPU vi nhau.

    n v ni ghp bus (Bus Interface Unit - BIU) kt ni v trao i thng tin vi nhau gia bus bn trong (internal bus) vi bus bn ngoi (external bus).

  • 174

    Tc ca b x l

    Tc ca b x l: S lnh c thc hin trong 1 giy

    MIPS (Millions of Instructions per Second)

    Kh nh gi chnh xc

    Tn s xung nhp ca b x l: B x l hot ng theo mt xung nhp (Clock) c tn s

    xc nh

    Tc ca b x l c nh gi gin tip thng qua tn s ca xung nhp

  • 175

    Tc ca b x l (tip)

    Dng xung nhp:

    T0: chu k xung nhp

    Mi thao tc ca b x l mt mt s nguyn ln chu k T0 T0 cng nh th b x l chy cng nhanh

    Tn s xung nhp: f0=1/T0 gi l tn s lm vic ca CPU

    VD: My tnh dng b x l Pentium IV 2GHz Ta c: f0 = 2GHz = 2 x 10

    9Hz

    T0 = 1/f0 = 1 / (2 x 109) = 0,5 ns

    T0

  • 176

    B nh my tnh

    Chc nng: lu tr chng trnh v d liu

    Cc thao tc c bn vi b nh: Thao tc c (Read)

    Thao tc ghi (Write)

    Cc thnh phn chnh: B nh trong (Internal Memory)

    B nh ngoi (External Memory)

  • 177

    Cc thnh phn b nh my tnh

    CPU B nh trong

    B nh ngoi

  • 178

    B nh trong

    Chc nng v c im: Cha cc thng tin m CPU c th trao i trc tip

    Tc rt nhanh

    Dung lng khng ln

    S dng b nh bn dn: ROM v RAM

    Cc loi b nh trong: B nh chnh

    B nh cache (b nh m nhanh)

  • 179

    B nh chnh (Main Memory)

    L thnh phn nh tn ti trn mi h thng my tnh

    Cha cc chng trnh v d liu ang c CPU s dng

    T chc thnh cc ngn nh c nh a ch

    Ngn nh thng c t chc theo Byte Ni dung ca ngn nh c th thay i,

    song a ch vt l ca ngn nh lun c nh

    Thng thng, b nh chnh bao gm 2 phn: B nh RAM B nh ROM

    00101011

    11010101

    00001010

    01011000

    11111011

    00001000

    11101010

    00000000

    10011101

    00101010

    11101011

    00000010

    00101011

    00101011

    11111111

    10101010

    0000

    0001

    0010

    0011

    0100

    0101

    0110

    0111

    1000

    1001

    1010

    1011

    1100

    1101

    1110

    1111

    Ni dung a ch

  • 180

    B nh m nhanh (Cache memory)

    L thnh phn nh tc nhanh c t m gia CPU v b nh chnh nhm tng tc truy cp b nh ca CPU.

    Tc ca cache nhanh hn b nh chnh nhng dung lng nh hn.

    Cache thng c chia ra thnh mt s mc: cache L1, cache L2, ...

    Hin nay cache c tch hp trn cc chip vi x l.

    Cache c th c hoc khng.

  • 181

    B nh ngoi

    Chc nng v c im: Lu gi ti nguyn phn mm ca my tnh, bao gm:

    h iu hnh, cc chng trnh v cc d liu

    B nh ngoi c kt ni vi h thng di dng cc thit b vo-ra

    Dung lng ln

    Tc chm

    Cc loi b nh ngoi: B nh t: a cng, a mm

    B nh quang: a CD, DVD

    B nh bn dn: Flash disk, memory card

  • 182

    H thng vo-ra (Input-Output)

    Chc nng: Trao i thng tin gia my tnh vi th gii bn ngoi.

    Cc thao tc c bn: Vo d liu (Input)

    Ra d liu (Output)

    Cc thnh phn chnh: Cc thit b ngoi vi (Peripheral Devices)

    Cc m-un ni ghp vo-ra (IO Modules)

  • 183

    Cu trc c bn ca h thng vo-ra

    M-un

    vo-ra

    Cng

    vo-

    ra

    Cng

    vo-

    ra

    Thit b

    ngoi vi

    Thit b

    ngoi vi

    Cng

    vo-

    ra

    Thit b

    ngoi vini ghp

    vi CPU

    v

    b nh

    chnh

  • 184

    Cc thit b ngoi vi

    Chc nng: chuyn i d liu gia bn trong v bn ngoi my tnh

    Cc loi thit b ngoi vi c bn: Thit b vo: bn phm, chut, my qut ...

    Thit b ra: mn hnh, my in ...

    Thit b nh: cc a ...

    Thit b truyn thng: modem ...

  • 185

    M-un vo-ra

    Chc nng: ni ghp thit b ngoi vi vi my tnh

    Khi nim cng vo-ra: Trong mi m-un vo-ra c mt hoc mt vi cng vo-

    ra (I/O Port).

    Mi cng vo-ra cng c nh mt a ch xc nh.

    Thit b ngoi vi c kt ni v trao i d liu vi bn trong my tnh thng qua cc cng vo-ra.

  • 186

    Lin kt h thng

    Lung thng tin trong my tnh

    Cu trc bus c bn

    Phn cp bus trong my tnh

  • 187

    Lung thng tin trong my tnh

    Cc m-un trong my tnh: CPU

    M-un nh

    M-un vo-ra

    cn c kt ni vi nhau

  • 188

    Kt ni m-un nh

    Module nh

    a ch

    D liu

    T/h /khin c

    T/h /khin ghi

    D liu hoc lnh

  • 189

    Kt ni m-un vo-ra

    Module

    vo-ra

    a ch

    DL t bn trong MT

    T/h /khin c

    T/h /khin ghi

    DL n TBNV

    DL t TBNV DL n bn trong MT

    Cc t/h /khin ngt

  • 190

    Kt ni CPU

    CPU

    Lnh

    D liu

    a ch

    Cc t/h /khin ngt

    D liu

    Cc t/h /khin b nh v vo-ra

  • 191

    Nhn xt

    C 4 loi thng tin: a ch

    D liu

    Lnh

    Thng tin iu khin

  • 192

    Cu trc bus c bn

    Khi nim chung v bus: Bus: tp hp cc ng kt ni dng vn chuyn

    thng tin gia cc thnh phn ca my tnh vi nhau.

    rng bus: l s ng dy ca bus c th truyn thng tin ng thi. Tnh bng bit.

    Phn loi cu trc bus:

    Cu trc n bus

    Cu trc a bus

  • 193

    Bus ng b v bus khng ng b

    Bus ng b: C ng tn hiu Clock

    Cc s kin xy ra trn bus c xc nh bi xung nhp Clock.

    Bus khng ng b: Khng c ng tn hiu Clock

    Mt s kin trn bus kt thc s kch hot s kin tip theo.

  • 194

    Cu trc n bus

    CPU Mun nhMun vo-ra

    N bit

    M bit

    Bus a ch

    Bus d liu

    Bus iu khin

    Mun nhMun vo-ra

    ... ...

  • 195

    Bus a ch (Address bus)

    Chc nng: vn chuyn a ch t CPU n m-un nh hay m-un vo-ra xc nh ngn nh hay cng vo-ra m CPU cn trao i thng tin.

    rng bus a ch: xc nh dung lng b nh cc i ca h thng.

    Nu rng bus a ch l N bit (gm N ng dy AN-1, AN-2, ... , A2, A1, A0) th:

    c kh nng vn chuyn c N bit a ch ng thi

    c kh nng nh a ch ti a c 2N ngn nh = 2N Byte gi l khng gian a ch b nh.

  • 196

    V d

    rng bus a ch ca mt s b x l ca Intel 8088/8086 : N = 20 bit KGCBN = 220 Byte = 1 MB

    80286 : N = 24 bit KGCBN = 224 Byte = 16 MB

    80386, 80486, Pentium : N = 32 bit KGCBN = 232 Byte = 4 GB

    Pentium II, III, 4 : N = 36 bit KGCBN = 236 Byte = 64 GB

  • 197

    Bus d liu (Data bus)

    Chc nng: Vn chuyn lnh t b nh n CPU

    Vn chuyn d liu gia CPU, cc m-un nh v m-un vo-ra vi nhau

    rng bus d liu: Xc nh s bit d liu c th c trao i ng thi.

    Nu rng bus d liu l M bit (gm M ng dy DM-1, DM-2, ... , D2, D1, D0) th ngha l ng bus d liu c th vn chuyn ng thi c M bit d liu

    M thng l 8, 16, 32, 64 bit

  • 198

    V d

    rng bus d liu ca mt s b x l ca Intel: 8088 : M = 8 bit

    8086, 80286 : M = 16 bit

    80386, 80486 : M = 32 bit

    Cc b x l Pentium : M = 64 bit

  • 199

    Bus iu khin (Control bus)

    Chc nng: vn chuyn cc tn hiu iu khin

    Cc loi tn hiu iu khin: Cc tn hiu iu khin pht ra t CPU iu khin m-

    un nh hay m-un vo-ra

    Cc tn hiu yu cu t m-un nh hay m-un vo-ra gi n CPU

  • 200

    V d

    Cc tn hiu pht ra t CPU iu khin c/ghi: Memory Read (MEMR): iu khin c d liu t mt

    ngn nh c a ch xc nh ln bus d liu.

    Memory Write (MEMW): iu khin ghi d liu c sn trn bus d liu n mt ngn nh c a ch xc nh.

    I/O Read (IOR): iu khin c d liu t mt cng vo-ra c a ch xc nh ln bus d liu.

    I/O Write (IOW): iu khin ghi d liu c sn trn bus d liu ra mt cng c a ch xc nh.

  • 201

    V d (tip)

    Cc tn hiu iu khin ngt: Interrupt Request (INTR): Tn hiu t b iu khin vo-

    ra gi n yu cu ngt CPU trao i vo-ra. Tn hiu INTR c th b che.

    Interrupt Acknowledge (INTA): Tn hiu pht ra t CPU bo cho b iu khin vo-ra bit CPU chp nhn ngt.

    Non Maskable Interrupt (NMI): tn hiu ngt khng che c gi n ngt CPU.

    Reset: Tn hiu t bn ngoi gi n CPU v cc thnh phn khc khi ng li my tnh.

  • 202

    V d (tip)

    Cc tn hiu iu khin bus: Bus Request (BRQ) / Hold: Tn hiu t b iu khin

    vo-ra chuyn dng gi n yu cu CPU chuyn nhng quyn s dng bus.

    Bus Grant (BGT) / Hold Acknowledge: Tn hiu pht ra t CPU chp nhn chuyn nhng quyn s dng bus.

    Lock: Tn hiu kha khng cho xin chuyn nhng bus.

    Unlock: Tn hiu m kha cho xin chuyn nhng bus.

  • 203

    c im ca cu trc n bus

    Tt c cc thnh phn cng ni vo mt ng bus chung

    Ti mt thi im, bus ch phc v c mt yu cu trao i d liu

    Bus phi c tc bng tc ca thnh phn nhanh nht trong h thng

    Bus ph thuc vo cu trc bus ca b x l cc m-un nh v cc m-un vo-ra cng ph thuc vo b x l c th.

    Cn phi thit k bus phn cp hay cu trc a bus

  • 204

    Phn cp bus trong my tnh

    Phn cp thnh nhiu bus khc nhau cho cc thnh phn:

    Bus ca b x l

    Bus ca b nh chnh

    Cc bus vo-ra

    Phn cp bus khc nhau v tc

    Cc bus ni ghp vi m-un nh v m-un vo-ra khng ph thuc vo b x l c th.

  • 205

    Cc bus in hnh trong my PC

    Bus ca b x l (Front Side Bus FSB): c tc nhanh nht

    Bus ca b nh chnh (ni ghp vi cc m-un nh RAM)

    AGP bus (Accelerated Graphic Port) cng tng tc ha: ni ghp vi card mn hnh

    PCI bus (Peripheral Component Interconnect): ni ghp vi cc TBNV c tc trao i d liu nhanh.

    USB (Universal Serial Bus): bus ni tip a nng

    IDE (Integrated Drive Electronics): bus kt ni vi a cng hoc a quang (CD, DVD, )

  • 206

    VD 1: H thng Pentium III

  • 207

    VD 2: Pentium 4 dng chipset 865PE

    B chipset Intel 865PE gm c hai con chip 82865PE (MCH) v 82801ER (ICH5-R):

    Chip Intel 82865PE MCH h tr CPU Pentium 4 s dng cng ngh siu phn lung (Hyper Threading HT), b nh DDR400, mode Dual Channel (ring chip 82865G (MCH) ca b chipset i865G th tch hp c nhn x l ha Intel Extreme Graphics 2).

    Chip Intel 82801ER (ICH5-R) tch hp cc b iu khin (controller) cc thit b I/O nh Ultra ATA 100, Serial ATA- RAID-0, USB 2.0, m thanh AC'97 c 6

    knh, LAN, EHCI, ASF, ...

  • 208

    VD 2 (tip)

  • 209

    3.1.2. Hot ng c bn ca my tnh

    Thc hin chng trnh

    X l ngt

    Hot ng vo ra

  • 210

    Thc hin chng trnh

    Nguyn tc hot ng: Chng trnh ang c thc hin phi nm trong b

    nh chnh ca my tnh.

    Thc hin chng trnh l lp i lp li chu trnh lnh gm hai bc:

    Nhn lnh

    Thc thi lnh

    Thc hin chng trnh b dng nu b li nghim trng khi thc thi lnh hoc gp lnh dng chng trnh

  • 211

    Chu trnh lnh

    Bt u

    Nhn lnh

    Thc thi

    lnh

    Dng

  • 212

    Nhn lnh

    Bt u mi chu trnh lnh, CPU s nhn lnh t b nh chnh a vo bn trong CPU.

    Bn trong CPU c 2 thanh ghi lin quan trc tip n qu trnh nhn lnh:

    Thanh ghi b m chng trnh (Program Counter - PC): cha a ch ca lnh s c nhn vo.

    Thanh ghi lnh (Instruction Register - IR): lnh c nhn t b nh chnh s c np vo IR.

  • 213

    Nhn lnh (tip)

    Hot ng nhn lnh din ra nh sau: CPU pht a ch ca lnh cn nhn t PC n b nh

    chnh

    CPU pht tn hiu iu khin c b nh chnh (MEMR - Memory Read)

    Lnh t b nh chnh c chuyn vo IR

    Ni dung ca PC t ng tng tr sang lnh k tip nm ngay sau lnh va c nhn.

  • 214

    Minh ha qu trnh nhn lnh

    302

    PC

    IR

    CPU

    Lnh

    Lnh

    Lnh i

    Lnh i+1

    Lnh

    Lnh

    B nh chnh

    303

    PC

    Lnh i

    IR

    CPU

    Lnh

    Lnh

    Lnh i

    Lnh i+1

    Lnh

    Lnh

    B nh chnh

    Trc khi nhn lnh i Sau khi nhn lnh i

    300

    301

    302

    303

    304

    305

    300

    301

    302

    303

    304

    305

  • 215

    Thc thi lnh

    Lnh nm IR s c chuyn sang n v iu khin (Control Unit). n v iu khin s tin hnh gii m lnh v pht cc tn hiu iu khin thc thi thao tc m lnh yu cu.

    Cc kiu thao tc ca lnh: Trao i d liu gia CPU v b nh chnh

    Trao i d liu gia CPU v m-un vo-ra

    X l d liu: thc hin cc php ton s hc hoc php ton logic vi cc d liu

    iu khin r nhnh

    Kt hp cc thao tc trn

  • 216

    Hot ng ngt

    Khi nim chung v ngt (Interrupt): Ngt l c ch cho php CPU tm dng chng trnh ang thc hin chuyn sang thc hin mt chng trnh khc, gi l chng trnh con phc v ngt.

    Cc loi ngt: Ngt do li khi thc hin chng trnh, v d: trn s,

    chia cho 0

    Ngt do li phn cng, v d: li b nh RAM

    Ngt do tn hiu yu cu t m-un vo-ra gi n CPU yu cu trao i d liu

  • 217

    Chu trnh x l ngt

    c thm vo cui chu trnh lnh

    Sau khi hon thnh mt lnh, CPU kim tra xem c yu cu ngt gi n hay khng

    Nu khng c tn hiu yu cu ngt th CPU nhn lnh k tip

    Nu c yu cu ngt v ngt c chp nhn th:

    CPU ct ng cnh hin ti ca chng trnh ang thc hin (cc thng tin lin quan n chng trnh b ngt)

    CPU chuyn sang thc hin chng trnh con phc v ngt tng ng

    Kt thc chng trnh con , CPU khi phc li ng cnh v tr v tip tc thc hin chng trnh ang tm dng

  • 218

    Hot ng ngt (tip)

    Bt u

    Nhn lnh

    Thc hin

    lnhDng

    N Kim tra

    c ngt hay

    khng ?

    Chuyn n

    chung trnh

    iu khin ngt

    Y

  • 219

    Hot ng ngt (tip)

    1

    2

    i

    i+1

    M

    Chng trnh ang thc hin

    Ngt y

    Lnh

    Lnh

    RETURN

    CTC phc v ngt

  • 220

    X l vi nhiu tn hiu yu cu ngt

    X l ngt tun t: Khi mt ngt ang c thc hin, cc ngt khc s b

    cm

    B x l s b qua cc ngt tip theo trong khi ang x l mt ngt

    Cc ngt vn ang i v c kim tra sau khi ngt u tin c x l xong

    Cc ngt c thc hin tun t

  • 221

    X l ngt tun t (tip)

  • 222

    X l vi nhiu tn hiu yu cu ngt

    X l ngt u tin: Cc ngt c nh ngha mc u tin khc nhau

    Ngt c mc u tin thp hn c th b ngt bi ngt u tin cao hn ngt xy ra lng nhau

  • 223

    X l ngt u tin

  • 224

    Hot ng vo-ra

    L hot ng trao i d liu gia thit b ngoi vi vi bn trong my tnh.

    Cc kiu hot ng vo-ra: CPU trao i d liu vi m-un vo-ra

    M-un vo-ra trao i d liu trc tip vi b nh chnh

  • 225

    3.1.3. Cu trc ca MTCN in hnh

    S khi

    Cc linh kin trn bn mch chnh

    Cc thit b ngoi vi c bn

  • 226

    S khi

  • 227

    S khi (tip)

    Hp my tnh (Case): Bn mch chnh (Mainboard):

    B vi x l

    B nh h thng: chip nh ROM v cc module nh RAM

    Cc vi mch iu khin tng hp (chipset)

    Cc khe cm m rng

    Cc knh truyn tn hiu (bus)

    Cc loi a: a cng, a mm, a quang, ...

    Cc cng vo-ra

    B ngun v qut

    Cc thit b ngoi vi (Peripheral Devices): Mn hnh (monitor), bn phm (keyboard), chut (mouse), loa

    (speaker), my in (printer), my qut nh (scanner), modem, ...

  • 228

    Hp my tnh (Case)

  • 229

    Cc loi a

  • 230

    Cc cng vo-ra

  • 231

    B ngun v qut

  • 232

    Cc linh kin trn bn mch chnh

  • 233

    B vi x l

  • 234

    B nh h thng

  • 235

    Cc khe cm m rng

  • 236

    Cc thit b ngoi vi c bn

  • 237

    Cc thit b ngoi vi (tip)

  • 238

    Cc thit b ngoi vi (tip)

  • 239

    Cc thit b ngoi vi (tip)

  • 240

    Chng 3

    Cn tip !

  • 241

    3.2. B x l trung tm

    3.2.1. Cu trc c bn ca CPU

    3.2.2. Tp lnh

    3.2.3. Hot ng ca CPU

  • 242

    3.2.1. Cu trc c bn ca CPU

    n v

    iu khin

    (CU)

    n v

    s hc v

    logic

    (ALU)

    Tp cc

    thanh ghi

    (RF)

    n v ni ghp bus (BIU)

    bus d liu

    bus bn trong

    bus a ch bus iu khin

  • 243

    1. n v iu khin (CU)

    Chc nng: iu khin nhn lnh t b nh a vo thanh ghi lnh

    v tng ni dung ca PC tr sang lnh k tip.

    Gii m lnh nm trong thanh ghi lnh xc nh thao tc cn thc hin v pht ra tn hiu iu khin thc hin lnh .

    Nhn tn hiu yu cu t bus h thng v p ng vi cc yu cu .

  • 244

    n v iu khin (tip)

    M hnh kt ni ca n v iu khin:

    n v

    iu khin

    Thanh ghi lnh

    Bus iu khin

    Tn hiu

    iu khin

    bn trong CPU

    Cc c

    Clock

    Tn hiu iu khin

    n bus h thng

    Tn hiu yu cu

    t bus h thng

  • 245

    n v iu khin (tip)

    Cc tn hiu a n n v iu khin: M lnh t thanh ghi lnh a n gii m

    Cc c t thanh ghi c cho bit trng thi ca CPU

    Xung clock t b to xung bn ngoi cung cp cho n v iu khin lm vic

    Cc tn hiu yu cu t bus iu khin

  • 246

    n v iu khin (tip)

    Cc tn hiu pht ra t n v iu khin: Cc tn hiu iu khin bn trong CPU:

    iu khin cc thanh ghi

    iu khin hot ng ca ALU

    Cc tn hiu iu khin bn ngoi CPU:

    iu khin b nh chnh

    iu khin cc module vo-ra

  • 247

    2. n v s hc v logic (ALU)

    Chc nng: Thc hin cc php ton s hc v cc php ton logic.

    S hc: cng, tr, nhn, chia, tng, gim, o du,

    Logic: AND, OR, XOR, NOT, cc php dch v quay bit

  • 248

    n v s hc v logic (tip)

    M hnh kt ni ca ALU:

    n v

    s hc v logic

    (ALU)

    D liu vo t

    cc thanh ghi

    Cc tn hiu

    t n v

    iu khin

    Thanh ghi c

    D liu ra n

    cc thanh ghi

  • 249

    3. Tp thanh ghi (RF)

    a. Chc nng v phn loi

    b. Mt s thanh ghi in hnh

  • 250

    a. Chc nng v phn loi

    Chc nng: L tp hp cc thanh ghi nm trong CPU

    Cha cc thng tin tm thi phc v cho hot ng hin ti ca CPU.

  • 251

    Phn loi tp thanh ghi

    Phn loi theo kh nng can thip ca ngi lp trnh: Cc thanh ghi khng lp trnh c: ngi lp trnh khng can thip

    c

    Cc thanh ghi lp trnh c: ngi lp trnh can thip c

    Phn loi theo chc nng: Thanh ghi a ch: qun l a ch ca ngn nh hay cng vo-ra

    Thanh ghi d liu: cha cc d liu tm thi hoc kt qu trung gian phc v cho vic x l d liu ca CPU

    Thanh ghi iu khin v trng thi: cha cc thng tin iu khin v trng thi ca CPU

    Thanh ghi lnh: cha lnh ang c thc hin

    Thanh ghi a nng: c th cha a ch hoc d liu

  • 252

    b. Mt s thanh ghi in hnh

    Cc thanh ghi a ch B m chng trnh (Program Counter PC)

    Con tr d liu (Data Pointer DP)

    Con tr ngn xp (Stack Pointer SP)

    Thanh ghi c s v thanh ghi ch s (Base Register & Index Register)

    Cc thanh ghi d liu

    Thanh ghi trng thi

  • 253

    Cc vng nh c bn ca CT

    Chng trnh ang thc hin phi nm trong b nh chnh v n chim 3 vng nh c bn sau:

    Vng nh lnh (Code): cha cc lnh ca chng trnh.

    Vng d liu (Data): cha d liu ca chng trnh. Thc cht y l ni cp pht cc ngn nh cho cc bin nh.

    Vng ngn xp (Stack): l vng nh c cu trc LIFO (Last In First Out) dng ct gi thng tin v sau c th khi phc li. Thng dng cho vic thc hin cc chng trnh con.

  • 254

    B m chng trnh (PC)

    Cn gi l con tr lnh (Instruction Pointer - IP)

    L thanh ghi cha a ch ca lnh tip theo s c nhn vo.

    Sau khi mt lnh c nhn vo th ni dung ca PC t ng tng tr sang lnh k tip nm ngay sau lnh va c nhn.

  • 255

    Minh ha hot ng ca PC

    PC Lnh s c nhn vo

    Lnh

    Lnh

    Lnh k tip

    Lnh

    Lnh

    Vng nh lnh (Code)

  • 256

    Thanh ghi con tr d liu (DP)

    Cha a ch ca ngn nh d liu m CPU mun truy cp.

    Thng c mt s thanh ghi con tr d liu.

  • 257

    Minh ha hot ng ca DP

    DP D liu cn c/ghi

    D liu

    D liu

    D liu

    D liu

    D liu

    Vng d liu (Data)

  • 258

    Con tr ngn xp (SP)

    Cha a ch ca ngn nh nh ngn xp (ngn xp c chiu t y ln nh ngc vi chiu tng ca a ch)

    Khi ct thm mt thng tin vo ngn xp: Ni dung ca SP t ng gim

    Thng tin c ct vo bt u t ngn nh tr bi SP

    Khi ly mt thng tin ra khi ngn xp: Thng tin c ly ra bt u t ngn nh tr bi SP

    Ni dung ca SP t ng tng

    Khi ngn xp rng: SP tr vo y ngn xp

  • 259

    Minh ha hot ng ca SP

    SP nh Stack mi

    nh Stack c

    y Stack

    Ngn xp (Stack)

    SP nh Stack c

    nh Stack mi

    y Stack

    Ngn xp (Stack)

    Khi ly 1 thng tin ra khi ngn xp, SP t ng tng Khi ct 1 thng tin vo ngn xp, SP t ng gim

    a

    ch t

    ng d

    n

    a

    ch t

    ng d

    n

  • 260

    Thanh ghi c s v thanh ghi ch s

    Thanh ghi c s: cha a ch ca ngn nh c s (a ch c s).

    Thanh ghi ch s: cha lch a ch gia ngn nh m CPU cn truy cp so vi ngn nh c s (ch s).

    a ch ca ngn nh cn truy cp = a ch c s + ch s

  • 261

    Minh ha thanh ghi c s v ch s

    Ngn nh cn truy cp

    Ngn nh c sThanh ghi c s

    Thanh ghi ch s

    B nh chnh

  • 262

    Cc thanh ghi d liu

    Cha cc d liu tm thi hoc cc kt qu trung gian phc v cho vic x l d liu ca CPU

    Cn c nhiu thanh ghi d liu

    Cc thanh ghi s nguyn: 8, 16, 32, 64 bit

    Cc thanh ghi s du chm ng

  • 263

    Thanh ghi trng thi

    Cn gi l thanh ghi c (Flag Register)

    Cha cc thng tin trng thi ca CPU Cc c php ton: biu th trng thi ca kt qu php

    ton

    Cc c iu khin: iu khin ch lm vic ca CPU

  • 264

    V d c php ton

    C Zero (ZF - c rng): c thit lp ln 1 khi kt qu ca php ton va thc hin xong bng 0.

    C Sign (SF - c du): c thit lp ln 1 khi kt qu ca php ton va thc hin nh hn 0, hay ni cch khc, c Sign nhn gi tr bng bit du ca kt qu.

    C Carry (CF - c nh): c thit lp ln 1 nu php ton xy ra hin tng carry-out.

    C Overflow (OF - c trn): c thit lp ln 1 nu php ton xy ra hin tng overflow.

  • 265

    V d c iu khin

    C Interrupt (IF - c cho php ngt): Nu IF = 1 th CPU trng thi cho php ngt vi tn

    hiu yu cu ngt t bn ngoi gi ti.

    Nu IF = 0 th CPU trng thi cm ngt vi tn hiu yu cu ngt t bn ngoi.

  • 266

    Bi tp

    Gi s c cc bin nh a, b, c, d, e, f thuc kiu s nguyn c du 8 bit. Cc bin a, b c gn gi tr nh sau:

    a:=-58 b:=72

    Hy biu din cc php tnh sau y di dng s nh phn v cho bit kt qu dng thp phn cng vi gi tr ca cc c ZF, SF, CF, OF tng ng.

    c:=a-b d:=a+b e:=b-a f:=-a-b

  • 267

    B x l trung tm

    3.2.1. Cu trc c bn ca CPU

    3.2.2. Tp lnh

    3.2.3. Hot ng ca CPU

  • 268

    3.2.2. Tp lnh

    1. Gii thiu chung v tp lnh

    2. Cc kiu thao tc in hnh

    3. Cc phng php a ch ha ton hng

  • 269

    1. Gii thiu chung v tp lnh

    Mi b x l c mt tp lnh xc nh (mang tnh k tha trong cng mt dng h).

    Tp lnh thng c hng chc n hng trm lnh.

    Mi lnh l mt chui s nh phn m b x l hiu c thc hin mt thao tc xc nh.

    Cc lnh c m t bng cc k hiu gi nh cc lnh hp ng.

  • 270

    Khun dng ca mt lnh my

    M thao tc (Operation Code - Opcode): m ha cho thao tc m CPU phi thc hin.

    Tham chiu ton hng: m ha cho ton hng hoc ni cha ton hng m thao tc s tc ng. Ton hng ngun (Source Operand): d liu vo ca thao tc (CPU

    s c)

    Ton hng ch (Destination Operand): d liu ra ca thao tc (CPU s ghi)

    M thao tc Tham chiu ton hng

  • 271

    S lng ton hng trong lnh

    Ba ton hng: 2 ton hng ngun, 1 ton hng ch

    VD: c = a + b

    T lnh di v phi m ha a ch cho c 3 ton hng

    Thng c s dng trn cc b x l tin tin

    Hai ton hng: 1 ton hng l ton hng ngun, ton hng cn li va l

    ngun va l ch.

    VD: a = a + b

    Gi tr c ca 1 ton hng ngun s b ghi bng KQ

    Rt gn di t lnh

    Thng c dng ph bin

  • 272

    S lng ton hng trong lnh (tip)

    Mt ton hng: Ch c 1 ton hng c ch ra trong lnh

    Ton hng cn li c ngm nh, thng l thanh ghi (VD: thanh cha Accumulator)

    Thng c s dng trn cc b x l th h c

    Khng c ton hng: Cc ton hng u c ngm nh

    S dng Stack

    VD: lnh c = a + b push a

    push b

    add

    pop c

    Khng thng dng

  • 273

    2. Cc kiu thao tc in hnh

    Chuyn d liu

    X l s hc vi s nguyn

    X l logic

    iu khin vo-ra

    Chuyn iu khin (r nhnh)

    iu khin h thng

  • 274

    Cc lnh chuyn d liu

    MOVE

    LOAD

    STORE

    EXCHANGE

    CLEAR

    SET

    PUSH

    POP

    Copy d liu t ngun n ch

    Copy d liu t b nh n b x l

    Copy d liu t b x l n b nh

    Tro i ni dung ca ngun v ch

    Chuyn cc bit 0 vo ton hng ch

    Chuyn cc bit 1 vo ton hng ch

    Copy d liu t ngun n nh ngn xp

    Copy d liu t nh ngn xp n ch

  • 275

    Cc lnh s hc

    ADD

    SUBTRACT

    MULTIPLY

    DIVIDE

    ABSOLUTE

    NEGATE

    INCREMENT

    DECREMENT

    COMPARE

    Tnh tng hai ton hng

    Tnh hiu hai ton hng

    Tnh tch hai ton hng

    Tnh thng hai ton hng

    Thay ton hng bng tr tuyt i ca n

    i du ton hng (ly b 2)

    Cng 1 vo ton hng

    Tr ton hng i 1

    So snh hai ton hng lp c

  • 276

    Cc lnh logic

    AND

    OR

    XOR

    NOT

    TEST

    SHIFT

    ROTATE

    CONVERT

    Thc hin php AND hai ton hng

    Thc hin php OR hai ton hng

    Thc hin php XOR hai ton hng

    o bit ca ton hng (ly b 1)

    Thc hin php AND hai ton hng lp c

    Dch tri (phi) ton hng

    Quay tri (phi) ton hng

    Chuyn i d liu t dng ny sang dng khc

  • 277

    VD cc lnh AND, OR, XOR, NOT

    Gi s c hai thanh ghi cha d liu nh sau: (R1) = 1010 1010

    (R2) = 0000 1111

    Khi ta c: (R1) AND (R2) = 0000 1010

    Php ton AND c th c dng xo mt s bit v gi nguyn cc bit cn li ca ton hng.

    (R1) OR (R2) = 1010 1111 Php ton OR c th c dng thit lp mt s bit v gi

    nguyn cc bit cn li ca ton hng.

    (R1) XOR (R2) = 1010 0101 Php ton XOR c th c dng o mt s bit v gi nguyn

    cc bit cn li ca ton hng.

    NOT (R1) = 0101 0101 Php ton NOT dng o tt c cc bit ca ton hng.

  • 278

    Cc lnh SHIFT v ROTATE

    0

    0

    0

    Dch tri logic

    Dch phi logic

    Dch phi s hc

    Dch tri s hc

    Quay tri logic

    Quay phi logic

  • 279

    Cc lnh vo-ra chuyn dng

    IN Copy d liu t mt cng xc nh n ch

    OUT Copy d liu t ngun n mt cng xc nh

  • 280

    Cc lnh chuyn iu khin

    JUMP (BRANCH)

    Nhy (r nhnh) khng iu kin; np vo PC mt a ch xc nh

    JUMP CONDITIONAL

    Kim tra iu kin xc nh, hoc np vo PC mt a ch xc nh hoc khng khng lm g c

    CALL

    Ct ni dung PC vo ngn xp, np vo PC a ch xc nh nhy n thc hin chng trnh con

    RETURN

    Khi phc ni dung PC t nh ngn xp tr v chng trnh chnh

  • 281

    Lnh r nhnh khng iu kin

    Chuyn ti thc hin lnh v tr c a ch l XXX:

    PC XXX

    lnh

    lnh

    lnh

    lnh

    lnh_k_tip

    lnh_r_nhnh XXX

    lnh

    XXX

    . . .

  • 282

    Lnh r nhnh c iu kin

    Kim tra iu kin trong lnh: Nu iu kin ng chuyn ti thc hin lnh v tr

    c a ch XXX

    PC XXX

    Nu iu kin sai chuyn sang thc hin lnh_k_tip

    iu kin thng c kim tra thng qua cc c.

    C nhiu lnh r nhnh c iu kin.

  • 283

    Minh ha lnh r nhnh c iu kin

    lnh

    lnh

    lnh

    lnh

    lnh

    lnh_k_tip

    lnh_r_nhnh_k XXX

    lnh

    lnh

    XXX

    . . .

  • 284

    Lnh CALL v RETURN

    Lnh gi chng trnh con: lnh CALL Ct ni dung PC (cha a ch ca lnh_k_tip) vo

    Stack

    Np vo PC a ch ca lnh u tin ca chng trnh con c gi

    B x l chuyn sang thc hin chng trnh con tng ng

    Lnh tr v t chng trnh con: lnh RETURN Ly a ch ca lnh_k_tip c ct Stack np tr li

    cho PC

    B x l c iu khin quay tr v thc hin tip lnh nm sau lnh CALL

  • 285

    Minh ha lnh CALL v RETURN

    lnh

    lnh

    lnh

    lnh

    lnh u tin ca CTCon

    lnh_k_tip

    CALL CTCon

    lnh

    lnh

    CTCon

    . . .

    RETURN

    . . .

  • 286

    Cc lnh iu khin h thng

    HALT

    WAIT

    NO OPERATION (NOP)

    LOCK

    UNLOCK

    Dng thc hin chng trnh

    Dng thc hin chng trnh, lp kim tra

    iu kin cho n khi tho mn th tip tc

    thc hin

    Khng thc hin g c

    Cm khng cho xin chuyn nhng bus

    Cho php xin chuyn nhng bus

  • 287

    3. Cc phng php a ch ha ton hng

    Phng php a ch ha ton hng l cch thc ch ra ni cha cc ton hng m thao tc s tc ng.

    Ton hng c th l: Hng s cn cho bit gi tr ca hng s

    Ni dung ca mt thanh ghi bn trong CPU cn cho bit tn ca thanh ghi

    Ni dung ca mt ngn nh cn cho bit a ch ngn nh

    Ni dung ca mt cng vo-ra cn cho bit a ch ca cng vo-ra

  • 288

    Cc ch a ch thng dng

    Ch a ch tc th

    Ch a ch thanh ghi

    Ch a ch trc tip

    Ch a ch gin tip qua thanh ghi

    Ch a ch dch chuyn

  • 289

    Ch a ch tc th

    Immediate Addressing Mode

    Ton hng l mt hng s ngay trong lnh

    V d:

    ADD AX, 5 ; AX AX + 5

    Truy nhp ton hng rt nhanh

    M thao tc Ton hng

  • 290

    Ch a ch thanh ghi

    Register Addressing Mode

    Ton hng l ni dung ca mt thanh ghi m tn thanh ghi c cho bit trong lnh.

    V d:

    MOV AX, BX ; AX BX

    Tc truy cp nhanh hn so vi nhng lnh c truy cp n b nh.

    M thao tc

    Ton hng

    Tn thanh ghi

    Tp thanh ghi

  • 291

    Ch a ch trc tip

    Direct Addressing Mode

    Ton hng l ni dung ca mt ngn nh m a ch ngn nh c cho trc tip trong lnh.

    V d:

    MOV AL, [1000]

    ; AL ni dung byte nh c a ch l 1000

    M thao tc

    Ton hng

    a ch

    B nh chnh

  • 292

    Ch a ch gin tip qua thanh ghi

    Register Indirect Addressing Mode

    V d: MOV AL, [BX] ; AL ni dung ca byte nh c a ch bng gi tr ca thanh ghi BX

    M thao tc

    a ch

    Tn thanh ghi

    Tp thanh ghi

    Ton hng

    B nh chnh

  • 293

    Ch a ch dch chuyn

    Displacement Addressing Mode

    Trng a ch cha 2 thnh phn: Tn thanh ghi

    Hng s

    a ch ca ton hng = ni dung thanh ghi + hng s

    Thanh ghi c th c ngm nh

  • 294

    Minh ha ch a ch dch chuyn

    M thao tc Tn thanh ghi

    Tp thanh ghi

    Ton hng

    B nh chnh

    Hng s

  • 295

    Cc dng ch a ch dch chuyn

    a ch ha tng i vi PC: Thanh ghi l PC

    VD: cc lnh chuyn iu khin

    nh a ch c s: Thanh ghi l thanh ghi c s (cha a ch c s)

    Hng s l ch s

    nh a ch ch s: Thanh ghi l thanh ghi ch s (cha ch s)

    Hng s l a ch c s

  • 296

    3.2. B x l trung tm

    3.2.1. Cu trc c bn ca CPU

    3.2.2. Tp lnh

    3.3.3. Hot ng ca CPU

  • 297

    3.2.3. Hot ng ca CPU

    1. Chu trnh lnh

    2. ng ng lnh

  • 298

    1. Chu trnh lnh

    Bao gm cc cng on chnh sau y: Nhn lnh

    Gii m lnh

    Nhn ton hng

    Thc hin lnh

    Ct ton hng

    Ngt

  • 299

    Gin trng thi chu trnh lnh

    Nhn lnh

    Xc nh a ch ca

    lnh

    Gii m thao tc ca lnh

    Tnh a ch ton

    hng

    Nhn ton hng

    Thao tc d liu

    Tnh a ch ton

    hng

    Ct ton hng

    Kim tra ngt

    NgtC

    KhngLnh x l STRING hay VECTORLnh tip theo

    Nhn t b nh chnh

    - T b nh- T cng vo

    - Ra b nh- n cng ra

  • 300

    Nhn lnh

    CPU a a ch ca lnh cn nhn t thanh ghi b m chng trnh PC ra bus a ch

    CPU pht tn hiu iu khin c b nh

    Lnh t b nh c t ln bus d liu v c CPU copy vo trong thanh ghi lnh IR

    CPU tng ni dung ca PC tr sang lnh k tip

  • 301

    Minh ha qu trnh nhn lnh

    PC

    CPU

    n viu khin

    IR

    B nh

    Bus

    a ch

    Bus

    d liu

    Bus

    iu khin

    PC : B m chng trnhIR : Thanh ghi lnh

  • 302

    Gii m lnh

    Lnh t thanh ghi lnh IR c a n n v iu khin

    n v iu khin tin hnh gii m lnh xc nh thao tc cn phi thc hin

  • 303

    Nhn ton hng

    CPU a a ch ca ton hng ra bus a ch

    CPU pht tn hiu iu khin c

    Ton hng c chuyn vo trong CPU

  • 304

    Nhn ton hng gin tip

    CPU a a ch ra bus a ch

    CPU pht tn hiu iu khin c

    Ni dung ngn nh c chuyn vo CPU, chnh l a ch ca ton hng

    CPU pht a ch ny ra bus a ch

    CPU pht tn hiu iu khin c

    Ni dung ca ton hng c chuyn vo CPU

  • 305

    Minh ha nhn ton hng gin tip

    MAR

    CPU

    n viu khin

    MBR

    B nh

    Bus

    a ch

    Bus

    d liu

    Bus

    iu khin

    MAR (Memory Address Register) :

    Thanh ghi a ch b nhMBR (Memory Buffer Register):

    Thanh ghi m b nh

  • 306

    Thc hin lnh

    C nhiu dng thao tc ty thuc vo lnh

    C th l: c/ghi b nh

    Vo-ra d liu

    Chuyn d liu gia cc thanh ghi

    Thc hin php ton s hc hoc logic

    Chuyn iu khin (r nhnh)

  • 307

    Ghi ton hng

    CPU a a ch ra bus a ch

    CPU a d liu cn ghi ra bus d liu

    CPU pht tn hiu iu khin ghi

    D liu trn bus d liu c copy n v tr xc nh

  • 308

    Minh ha qu trnh ghi ton hng

    MAR

    CPU

    n viu khin

    MBR

    B nh

    Bus

    a ch

    Bus

    d liu

    Bus

    iu khin

    MAR : Thanh ghi a ch b nhMBR : Thanh ghi m b nh

  • 309

    Ngt

    CPU lu li gi tr hin ti ca PC (l a ch tr v sau khi hon thnh ngt) thng lu vo Stack: CPU a ni dung ca PC ra bus d liu CPU a a ch (thng c xc nh t con tr ngn xp SP) ra

    bus a ch CPU pht tn hiu iu khin ghi b nh a ch tr v (ni dung ca PC) trn bus d liu c lu vo ngn

    nh tng ng ngn xp

    CPU np vo PC a ch lnh u tin ca chng trnh con phc v ngt tng ng: CPU xc nh a ch ca vector ngt tng ng CPU pht a ch ny ra bus a ch CPU pht tn hiu iu khin c b nh Gi tr ca vector ngt (a ch lnh u tin ca CTC phc v ngt)

    c chuyn ra bus d liu Gi tr ny c np vo trong PC

  • 310

    2. ng ng lnh

    Nguyn tc ca Pipeline: chia chu trnh lnh thnh cc cng on v cho php thc hin gi ln nhau theo kiu dy chuyn.

    Gi s chu trnh lnh gm 6 cng on vi thi gian thc hin nh nhau (T):

    Nhn lnh (Fetch Instruction FI)

    Gii m lnh (Decode Instruction DI)

    Tnh /ch ton hng (Calculate Operand Address CO)

    Nhn ton hng (Fetch Operands FO)

    Thc hin lnh (Execute Instruction EI)

    Ghi ton hng (Write Operands WO)

  • 311

    Biu thi gian ca ng ng lnh

    1 2 3 4 5 6 7 8 9 10 11 12

    Lnh 1 FI DI CO FO EI WO

    Lnh 2 FI DI CO FO EI WO

    Lnh 3 FI DI CO FO EI WO

    Lnh 4 FI DI CO FO EI WO

    Lnh 5 FI DI CO FO EI WO

    Lnh 6 FI DI CO FO EI WO

  • 312

    Cc xung t ca ng ng lnh

    Xung t cu trc: do nhiu cng on dng chung mt ti nguyn

    Xung t d liu: lnh sau s dng kt qu ca lnh trc

    Xung t iu khin: do r nhnh gy ra

  • 313

    3.3. B nh my tnh

    3.3.1. Tng quan h thng nh

    3.3.2. B nh bn dn

    3.3.3. B nh chnh

    3.3.4. B nh cache

    3.3.5. B nh ngoi

    3.3.6. B nh o

    3.3.7. B nh trn my tnh c nhn

  • 314

    3.3.1. Tng quan h thng nh

    1. Cc c trng ca h thng nh

    2. Phn cp h thng nh ca my tnh

  • 315

    1. Cc c trng ca h thng nh

    V tr: Bn trong CPU: tp thanh ghi B nh trong: b nh chnh v cache B nh ngoi: cc thit b nh

    Dung lng: di t nh (tnh bng bit) S lng t nh

    n v truyn: Theo tng t nh Theo tng khi (block) nh

    Phng php truy cp: Truy cp tun t (bng t) Truy cp trc tip (cc loi a) Truy cp ngu nhin (b nh bn dn) Truy cp lin kt (cache)

  • 316

    Cc c trng ca h thng nh

    Hiu nng: Thi gian truy cp

    Chu k nh

    Tc truyn

    Kiu vt l: B nh bn dn

    B nh t

    B nh quang

    Cc c tnh vt l: Kh bin (mt in th mt thng tin) / Khng kh bin

    Xa c / Khng xa c

    T chc

  • 317

    2. Phn cp h thng nh ca MT

    B vi x l

    CPU

    B

    nh

    Cache

    L1

    Tp

    thanh

    ghi

    B nh

    chnh

    B nh

    ngoi

    B nh

    Cache

    L2B nh

    mng

    Dung lng , tc , tn sut CPU truy cp , gi thnh / bit thng tin ,

  • 318

    H thng nh ca my tnh (tip)

    Tp thanh ghi (Registers): L thnh phn nh nm trong CPU, c coi l mc nh u tin

    Cha cc thng tin phc v cho hot ng thi im hin ti ca CPU

    B nh m nhanh (Cache): B nh c tc nhanh c t gia CPU v b nh chnh nhm

    tng tc truy cp b nh ca CPU.

    Thng c chia thnh mt vi mc (L1, L2)

    B nh chnh (Main Memory): Cha cc chng trnh v d liu ang c s dng.

    B nh ngoi (External Memory): Cha cc ti nguyn phn mm ca my tnh.

  • 319

    3.3. B nh my tnh

    3.3.1. Tng quan h thng nh

    3.3.2. B nh bn dn

    3.3.3. B nh chnh

    3.3.4. B nh cache

    3.3.5. B nh ngoi

    3.3.6. B nh o

    3.3.7. B nh trn my tnh c nhn

  • 320

    3.3.2. B nh bn dn

    1. Phn loi

    2. M hnh c bn ca chip nh

  • 321

    1. Phn loi

    Gm 2 loi chnh: ROM v RAM

    ROM (Read Only Memory): b nh ch c

    c im: B nh ch yu dng c thng tin

    B nh khng kh bin

    Cha cc chng trnh v d liu c nh vi h thng

  • 322

    ROM (tip)

    Cc loi b nh ROM: Maskable ROM (ROM mt n): thng tin c ghi khi ch to PROM (Programmable ROM):

    Khi ch to cha c thng tin Cho php ghi thng tin c 1 ln bng thit b chuyn dng

    EPROM (Erasable PROM): Cho php xa bng tia cc tm Ghi li bng thit b np EPROM

    EEPROM (Electrically Erasable PROM): C th xa bng tn hiu in v ghi li thng tin ngay trong mch lm

    vic (khng cn thit b ghi ring) C th xa v ghi li mc tng Byte Dung lng nh

    Flash Memory: ging EEPROM nhng: c/ghi theo tng block Tc rt nhanh Dung lng ln

  • 323

    RAM (Random Access Memory)

    RAM (Random Access Memory): b nh truy cp ngu nhin

    c im: L b nh c/ghi (Read/Write Memory RWM)

    B nh kh bin

    Cha cc thng tin tm thi

  • 324

    RAM (tip)

    Cc loi b nh RAM: SRAM (Static): RAM tnh

    Mi phn t nh l mt mch lt 2 trng thi n nh thng tin trn SRAM n nh

    Tc nhanh

    Dung lng chip nh nh

    Gi thnh t

    Thng dng lm b nh Cache

    DRAM (Dynamic): RAM ng Mi phn t nh l mt t in rt nh c sau mt khong thi gian

    th in tch trn t in s b mt, cho nn thng tin trn DRAM khng n nh khc phc bng mch lm ti (refresh) DRAM

    Tc chm (do mt thi gian lm ti DRAM)

    Dung lng chip nh ln

    Gi thnh r

    Thng dng lm b nh chnh

  • 325

    2. M hnh c bn ca chip nh

    B

    gii

    m

    a

    ch

    Ma trn nh

    2n x m bit

    T nh 0

    B

    m

    d

    liu

    A0

    An-1

    A2

    A1

    T nh 2n-1

    T nh 2

    T nh 1D0

    Dm-1

    D1

    iu khin c/ghi

    CS OEWE

    .

    .

    .

    .

    .

    .

    .

    .

    .

  • 326

    M hnh c bn ca chip nh (tip)

    C n chn a ch (An-1 A0) : vn chuyn vo chip nh c n bit a ch ng thi