Bài Giảng Kiến trúc máy tính - Pdf 15

Khoa
Khoa
KH & KT
KH & KT
M
M


y
y
t
t


nh
nh
Bo
Bo


moõn
moõn
Kyừ
Kyừ
thua
thua


t
t
Ma


i
i
Nguyeón
Nguyeón
Quo
Quo


c
c
Tua
Tua


n
n
Kiến trúc Máy tính - Chap 04
2
Tài liệuthamkhảo
) “Computer Organization and Design: the hardware/software
interface”,
John L. Hennessy & David A. Patterson, Second Edition,
MORGAN KAUFMANN PUBLISHERS, INC. 1998
) “Computer Architecture: a quantitative approach”,
John L. Hennessy & David A. Patterson, Third Edition,
MORGAN KAUFMANN PUBLISHERS, INC. 2002
Kiến trúc Máy tính - Chap 04
3
Chương 4.

0000 0000 0000 0000 0000 0000 0000 0000
1111 1111 1111 1111 1111 1111 1111 1111
) Các bit không có nghĩa là các bit 0 nằm ở bên trái của
số đếm
Kiến trúc Máy tính - Chap 04
6

) MIPS biểu diễn số nguyên âm theo bù 2
•Bit dấu (sign bit) là bit nằm phía trái cùng
•Tầm vực giá trị biểu diễn từ -2
(32-1)
cho đến 2
(32-1)
-1
1000 0000 0000 0000 0000 0000 0000 0000
0111 1111 1111 1111 1111 1111 1111 1111
) Vấn đề mở rộng dấu (sign extension)
• Td. biểu diễn giá trị -5
toán hạng 8 bit 1111 1011
toán hạng 16 bit 1111 1111 1111 1011
toán hạng 32 bit 1111 1111 1111 1111 1111 1111 1111 1011
•Lưu ý về các bit không có nghĩa ?
) Các lệnh liên quan đến số nguyên có dấu và không dấu
• lb và lbu , slt và sltu , slti và sltiu
Kiến trúc Máy tính - Chap 04
7
4.3 Cộng và trừ
) Cộng trừ nhị phân theo số bù 2
) Kết quả của phép cộng/trừ vượt quá giới hạn biểu diễn ?
• Tràn bit (carry)

Kiến trúc Máy tính - Chap 04
8

) Phân tích đoạn chương trình sau
addu $t0 , $t1 , $t2
xor $t3 , $t1 , $t2
slt $t3 , $t3 , $zero
bne $t3 , $zero , No_overflow
xor $t3 , $t0 , $t1
slt $t3 , $t3 , $zero
bne $t3 , $zero , Overflow
Kiến trúc Máy tính - Chap 04
9

) Phân tích đoạn chương trình sau
addu $t0 , $t1 , $t2
nor $t3 , $t1 , $zero
sltu $t3 , $t3 , $t2
bne $t3 , $zero , Overflow
Kiến trúc Máy tính - Chap 04
10
4.4 Các phép toán luận lý
) Các phép toán luận lý cơ bản
• and , andi
• or , ori
) Các lệnh dịch (shift)
• Dịch luận lý (logical shift)
sll rd , rt , shamt và sllv rd , rt , rs
srl rd , rt , shamt và srlv rd , rt , rs
• Dịch số học (arithmetic shift)

) ALU 1 bit ) ALU 32 bit
+
0
1
2
a
b
Result
OperationC
in
C
out
C
in
ALU
0
C
out
C
in
ALU
1
C
out
C
in
ALU
2
C
out

2
Result
31
Kiến trúc Máy tính - Chap 04
13

) Tinh chỉnh đơn vị ALU
+
0
1
2
a
b
Result
Operation
C
in
C
ou
t
0
1
B
invert
+
0
1
2
a
b

Operation
Result
0
Result
1
Result
2
C
in
ALU
1
C
out
a
1
b
1
0
Less
C
in
ALU
2
C
out
a
2
b
2
0

0
1
B
invert
3
Less
Overflow
Overflow
Kiến trúc Máy tính - Chap 04
15

) Tinh chỉnh đơn vị ALU (tt)
C
in
ALU
0
C
out
a
0
b
0
Less
C
in
Operation
Result
0
Result
1

C
out
a
31
b
31
0
Less
B
invert
Result
31
Overflow
Set
Zero
ALU
a
b
ALU operation
Zero
Result
Overflow
Carry out
Kiến trúc Máy tính - Chap 04
16
4.6 Mạch nhân
) Phép toán nhân
Số bị nhân (Multiplicand) 1000
2
Số nhân (Multiplier) 1001

• Minh họa
Kiến trúc Máy tính - Chap 04
20

) Nhân số nguyên có dấu
• Nhân phần trị tuyệt đối, sau đóxác định dấu cho tích số
•Giải thuật Booth: căn cứ
trên chuỗi bit 1 ở số nhân
) Nhân trong tập lệnh MIPS
•Tích số là 1 giá trị 64 bit được chứa trong cặp thanh ghi hi và lo
•Lệnh nhân mult rs , rt
multu rs , rt
•Lệnh chuyển dữ liệu tích số
mfhi rd
mflo rd
Không làm gì cả11
Trừ đi số bị nhân01
Cộng thêm số bị nhân10
Không làm gì cả00
Thực hiệna
i-1
a
i
Kiến trúc Máy tính - Chap 04
21
4.7 Mạch chia
) Phép toán chia
Số bị chia (Dividend) 1001010
2
1000

•Sơ đồ mạch
Kiến trúc Máy tính - Chap 04
24

) Mạch chia dạng 3 (tt)
•Giải thuật
• Minh họa
Kiến trúc Máy tính - Chap 04
25

) Chia số nguyên có dấu
• Chia phần trị tuyệt đối, sau đóxác định dấu cho thương số
) Chia trong tập lệnh MIPS
•Sử dụng thanh ghi hi để chứa số dư và lo để chứa thương số
•Lệnh chia
div rs , rt
divu rs , rt
•Lệnh chuyển dữ liệu thương số và số dư
mfhi rd
mflo rd


Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status