Professional Documents
Culture Documents
Bai4 - TaplenhVaHopngu
Bai4 - TaplenhVaHopngu
Mc tiu
Hiu kin trc tp lnh Hiu cc lnh hp ng Xy dng cc cu trc iu khin chng trnh
TS. H HI NAM
Phn lp tp lnh
CISC: My tnh vi tp lnh phc tp Nhiu lnh phong ph-> M lnh nh Tp lnh ln -> Kh ti u m lnh di lnh v thi gian thi hnh lnh thay i-> nh hng n hiu sut ca c ch pipeline RISC: My tnh vi tp lnh rt gn Tp ti thiu cc lnh Tng hiu sut pipeline D ti u m lnh M chng trnh ln: Cn nhiu b nh v tng thi gian truy cp b nh
2
TS. H HI NAM
www.ptit.edu.vn
Tn chng
Hp ng
Ngn ng my Chng trnh bao gm cc bt 0 v 1 Hp ng cung cp cc m gi nh cho cc m lnh my Cc ngn ng lp trnh bc thp/cao Hp ng l ngn ng lp trnh bc thp Assembler: Trnh bin dch Ngn ng lp trnh bc cao: Java, C++,Pascal, Basic, C Lp trnh hp ng Chng trnh hp ng bao gm mt chui cc lnh hp ng Mt lnh hp ng bao gm mt m gi nh v cc ton hng
www.ptit.edu.vn
Tn chng
TS. H HI NAM
Ti sao li hc hp ng?
Mc ch ng dng v gio dc Hiu qu (khng gian v thi gian) Hiu tt hn v h thng my tnh Tha mn c nhn
www.ptit.edu.vn
Tn chng
TS. H HI NAM
C php mt lnh hp ng
Operation Code Destination Operand AX Label Sub1 Source Operand BX
www.ptit.edu.vn
Tn chng
TS. H HI NAM
www.ptit.edu.vn
Y str M constant
nh ngha on m Tn chng
.code 6
www.ptit.edu.vn
Tn chng
www.ptit.edu.vn
So snh
Java x = 10 Y = 42 Assembly mov x,10 mov y,42
TS. H HI NAM
Tn chng
Cc lnh s hc (1)
ADD Syntax: ADD <destination>, <source> Example: ADD AX, BX ADD AL, 10 ADD [BX], AL FLAGS affected: C, Z, S, P, O, A SUB Syntax: SUB <destination>, <source> Example: SUB AX, BX SUB AL, 10 SUB [BX], AL FLAGS affected: C, Z, S, P, O, A
www.ptit.edu.vn
Tn chng
TS. H HI NAM
Cc lnh s hc (2)
MUL Syntax: MUL <source> <source> phi l mt thanh ghi hoc nh Nu <source> l mt s 8 bit AX<- AL* <source> Nu <source> l mt s 16 bit DX AX<- AX* <source> Example: Tnh 20*15 MOV AL, 20 MOV BL, 15 MUL BL FLAGS affected: Z, S, P
10
TS. H HI NAM
www.ptit.edu.vn
Tn chng
Cc lnh s hc (3)
DIV Syntax: DIV <source> <source> must be a register or a memory location If <source> is a 8-bit number: AX: divisor, AL: quotient, AH: remainder If <source> is a 16-bit number DX AX:source, AX: quotient, DX: remainder Example: Tnh 100/30 MOV AX, 100 MOV BL, 30 DIV BL FLAGS affected: Z, S, P
11
TS. H HI NAM
www.ptit.edu.vn
Tn chng
Cc lnh s hc (4)
INC Syntax: INC Example: MOV AX, 100 INC AX ; AX++ FLAGS affected: O, Z, S, A, P DEC Syntax: DEC Example: MOV AX, 100 DEC AX ; AX-FLAGS affected: O, Z, S, A, P
12
TS. H HI NAM
www.ptit.edu.vn
Tn chng
www.ptit.edu.vn
Tn chng
13
TS. H HI NAM
www.ptit.edu.vn
Tn chng
www.ptit.edu.vn
Tn chng
15
TS. H HI NAM
www.ptit.edu.vn
Tn chng
16
TS. H HI NAM
www.ptit.edu.vn
Tn chng
17
TS. H HI NAM
www.ptit.edu.vn
Tn chng
18
TS. H HI NAM
www.ptit.edu.vn
Tn chng
19
TS. H HI NAM
www.ptit.edu.vn
Tn chng
20
TS. H HI NAM
Cc lnh khc
Bit Processing STD STC STI CLD CLC CLI No operation NOP Halt the program HALT
www.ptit.edu.vn
Tn chng
21
TS. H HI NAM
www.ptit.edu.vn
Tn chng
22
TS. H HI NAM
www.ptit.edu.vn
Syntax: PUSH <source> <Source> must be a 2-byte operand SP SP + 2 ; {SP} source Example: PUSH AX
POP
Syntax: POP <destination> <destination> must be a 2-byte operand destination {SP} SP SP - 2 ; Example: POP BX
23
TS. H HI NAM
Tn chng
www.ptit.edu.vn
Tn chng
24
TS. H HI NAM
www.ptit.edu.vn
Tn chng
25
TS. H HI NAM
Cu trc lp FOR
www.ptit.edu.vn
Tn chng
26
TS. H HI NAM
www.ptit.edu.vn
Tn chng
27
TS. H HI NAM
Thc hnh
iu khin thit b hin th LED iu khin ng c bc (Step Motor) iu khin robot
www.ptit.edu.vn
Tn chng
28
TS. H HI NAM
Tng kt
Tp lnh : CISC, RISC Cc loi lnh hp ng Xy dng cu trc iu khin lung chng trnh:
IF . . . THEN FOR . . . REPEAT . . . UNTIL
www.ptit.edu.vn
Tn chng
29
TS. H HI NAM