lOMoARcPSD|40651217
PHIẾU GHI KẾT QUẢ QUAN SÁT
LAB 1: CÁCH MÁY TÍNH XỬ LÝ MỘT CHƯƠNG TRÌNH
Ngày: 20/10/2023
Họ và tên sinh viên: Nguyễn Thị Thanh Hải Lớp: 64HTTT1……………..
Máy (Machine) mặc định: Wombat1.cpu
Chương trình (Text) mặc định: W1-0.a
Nhiệm vụ của sinh viên:
- Chạy chương trình trong file W1-0.a ở chế độ từng vi lệnh
- Quan sát nội dung các thanh ghi của CPU, nội dung của các ngăn nhớ trong RAM,
vùng cửa sổ 3 và 5, mục Fetch Sequence
- Ghi nội dung quan sát được vào bảng sau:
Lệnh hợp ngữ
Địa chỉ của
các ngăn nhớ
chứa lệnh
Lệnh mã máy
(giải thích ý nghĩa
của từng lệnh)
Vi lệnh hợp ngữ
(giải thích ý nghĩa của
từng vi lệnh)
Read
000 0000
000 0001
0011 0000
0000 0000
pc->mar
Main[mar]-
>mdr mdr-> ir
Inc2-pc decode-
ir input-int->acc
End
jmpn Done
(acc>=0)
000 0010
000 0011
1011 0000
0000 1010
pc->mar
Main[mar]-
>mdr mdr-> ir
Inc2-pc decode-
ir
if(acc>=0)skip-1
ir(4-15)->pc
End
1
lOMoARcPSD|40651217
jmpn Done
(acc<0)
000 0010
000 0011
1011 0000
0000 1010
pc->mar
Main[mar]-
>mdr mdr-> ir
Inc2-pc decode-
ir
if(acc>=0)skip-1
ir(4-15)->pc
End
add sum
000 0100
000 0101
0101 0000
0001 0000
pc->mar
Main[mar]->mdr
mdr-> ir Inc2-pc
decode-ir ir(4-
15)-> mar
Main[mar]->
mdr acc+mdr->
acc
End
store sum
000 0110
000 0111
0010 0000
0001 0000
pc->mar
Main[mar]->mdr
mdr-> ir Inc2-pc
decode-ir ir(4-
15)->mar acc->
mdr mdr->
Main[mar]
End
jump Start
000 1000
000 1001
1001 0000
0000 0000
pc->mar
Main[mar]-
>mdr mdr-> ir
Inc2-pc
2
lOMoARcPSD|40651217
decode-ir ir(4-15)-
> pc
End
load sum
000 1010
000 1011
0001 0000
0001 0000
pc->mar
Main[mar]->mdr
mdr-> ir Inc2-pc
decode-ir ir(4-
15)->mar
Main[mar]->
mdr mdr-> acc
End
Write
000 1100
000 1101
0100 0000
0000 0000
pc->mar
Main[mar]-
>mdr mdr-> ir
Inc2-pc decode-
ir output-acc-
>int
End
Stop
000 1110
000 1111
0000 0000
0000 0000
pc->mar
Main[mar]-
>mdr mdr-> ir
Inc2-pc decode-
ir set-halt-bit
End
Địa chỉ của 2 byte dữ liệu mà tổng được lưu trữ (2-byte location where sum is
stored): 000 0110 và 000 0111
Giá trị nhị phân của tổng được lưu trong bộ nhớ: 01000000 và 00000000
Thông báo trong cửa sổ hiển thị (Console)
lOMoARcPSD|40651217
3
- Liệt kê các công đoạn thực hiện có thể có trong một chu kỳ lệnh.
+ load dữ liệu từ thanh ghi pc vào thanh ghi mar
+ lấy từ trong trong main dữ liệu từ dữ liệu của thanh ghi mar (lưu trữ địa chỉ
của lệnh) đưa vào thanh ghi mdr (lưu trữ địa chỉ)
+ load dữ liệu từ thanh ghi mdr vào thanh ghi ir
+ tăng thanh ghi pc trỏ sang địa chỉ của lệnh tiếp theo trong main
+ giải mã lệnh trong ir và chạy
Ví dụ:
lOMoARcPSD|40651217
4

Preview text:

lOMoARcPSD| 40651217
PHIẾU GHI KẾT QUẢ QUAN SÁT
LAB 1: CÁCH MÁY TÍNH XỬ LÝ MỘT CHƯƠNG TRÌNH Ngày: 20/10/2023
Họ và tên sinh viên: Nguyễn Thị Thanh Hải Lớp: 64HTTT1……………..
Máy (Machine) mặc định: Wombat1.cpu
Chương trình (Text) mặc định: W1-0.a
Nhiệm vụ của sinh viên:
- Chạy chương trình trong file W1-0.a ở chế độ từng vi lệnh
- Quan sát nội dung các thanh ghi của CPU, nội dung của các ngăn nhớ trong RAM,
vùng cửa sổ 3 và 5, mục Fetch Sequence
- Ghi nội dung quan sát được vào bảng sau: Lệnh hợp ngữ Địa chỉ của Lệnh mã máy Vi lệnh hợp ngữ các ngăn nhớ (giải thích ý nghĩa
(giải thích ý nghĩa của chứa lệnh của từng lệnh) từng vi lệnh) Read 000 0000 0011 0000 pc->mar 000 0001 0000 0000 Main[mar]- >mdr mdr-> ir Inc2-pc decode- ir input-int->acc End jmpn Done 000 0010 1011 0000 pc->mar (acc>=0) 000 0011 0000 1010 Main[mar]- >mdr mdr-> ir Inc2-pc decode- ir if(acc>=0)skip-1 ir(4-15)->pc End 1 lOMoARcPSD| 40651217 jmpn Done 000 0010 1011 0000 pc->mar (acc<0) 000 0011 0000 1010 Main[mar]- >mdr mdr-> ir Inc2-pc decode- ir if(acc>=0)skip-1 ir(4-15)->pc End add sum 000 0100 0101 0000 pc->mar 000 0101 0001 0000 Main[mar]->mdr mdr-> ir Inc2-pc decode-ir ir(4- 15)-> mar Main[mar]-> mdr acc+mdr-> acc End store sum 000 0110 0010 0000 pc->mar 000 0111 0001 0000 Main[mar]->mdr mdr-> ir Inc2-pc decode-ir ir(4- 15)->mar acc-> mdr mdr-> Main[mar] End jump Start 000 1000 1001 0000 pc->mar Main[mar]- 000 1001 0000 0000 >mdr mdr-> ir Inc2-pc 2 lOMoARcPSD| 40651217 decode-ir ir(4-15)- > pc End load sum 000 1010 0001 0000 pc->mar 000 1011 0001 0000 Main[mar]->mdr mdr-> ir Inc2-pc decode-ir ir(4- 15)->mar Main[mar]-> mdr mdr-> acc End Write 000 1100 0100 0000 pc->mar 000 1101 0000 0000 Main[mar]- >mdr mdr-> ir Inc2-pc decode- ir output-acc- >int End Stop 000 1110 0000 0000 pc->mar 000 1111 0000 0000 Main[mar]- >mdr mdr-> ir Inc2-pc decode- ir set-halt-bit End
Địa chỉ của 2 byte dữ liệu mà tổng được lưu trữ (2-byte location where sum is
stored): 000 0110 và 000 0111
Giá trị nhị phân của tổng được lưu trong bộ nhớ: 01000000 và 00000000
Thông báo trong cửa sổ hiển thị (Console) lOMoARcPSD| 40651217 3 Ví dụ:
- Liệt kê các công đoạn thực hiện có thể có trong một chu kỳ lệnh.
+ load dữ liệu từ thanh ghi pc vào thanh ghi mar
+ lấy từ trong trong main dữ liệu từ dữ liệu của thanh ghi mar (lưu trữ địa chỉ
của lệnh) đưa vào thanh ghi mdr (lưu trữ địa chỉ)
+ load dữ liệu từ thanh ghi mdr vào thanh ghi ir
+ tăng thanh ghi pc trỏ sang địa chỉ của lệnh tiếp theo trong main
+ giải mã lệnh trong ir và chạy lOMoARcPSD| 40651217 4