cau hoi asm
Cần hỏi về địa chỉ logic, địa chỉ vật lý
Đề bài: chỉ ra 5 cặp địa chỉ logic tương ứng với địa chỉ vật lý sau:6A12Dh
5 cặp địa chỉ :
6000:A12D
6001:A11D
6002:A10D
6003:A09D
6004:A08D
viết như vậy là đúng hay sai?
mắc về vấn đề này quá, mà sắp thi lại CTMT rồi
mọi người giúp nha. thanks trước
Bạn viết thế đúng rồi(nếu có thiếu thì thiếu chữ h thôi_6000h:A12Dh)
theo mình biết thj':
DCVL=segment*16+offset
=Thanh Ghj Đoạn*16+Thanh Ghj lệch
VD:6A12Dh=6A12h*16+000Dh=6A120h+000Dh
7B25Ah=7B25h*16+000Ah=7B250h+000Ah
Bạn sẽ thấy là các số của segment(Thanh Ghj Đoạn) sẽ gấp 16 lần so với số cùng thứ tự tương ứng ở offset(Thanh Ghj Lệch)
VD: d/c VL là 6A12Dh thj' có 1 D/c LG tương ứng là
6000h:A12Dh
6000h là segment(Thanh Ghj Đoạn)
A12Dh là offset(Thanh Ghj Lệch)
Ta thấy số 0 cuối cùng của 6000h sẽ tương ứng với hàng chục của A12Dh
Vd:6A12Dh=6000h*16+A12Dh
=60000h +A12Dh
hay 6A12Dh=
6000h*16
+ A12Dh
Do đó bạn muốn viết các cặp d/c lôgic từ 1 cặp d/c VL đã biết (vd:6A12Dh) thì chỉ việc viết 4 số đầu của nó là segment_Thanh Ghj Đoạn(6A12h) khi đó offset_Thanh Ghj Lệchh sẽ là số cuối cùngcủa DCVL(000Dh).
luk này bạn chỉ việc bớt 1 ở hàng đơn vị của segment_Thanh Ghj Đoạn(6A12h-->6A11h)va tăng 1 ở hàng chục của offset_Thanh Ghj Lệch(000Dh-->001Dh)
Ta sẽ dc cap D/c LG tương ứng với D/C VL 6A12Dh la: 6A12h:000Dh
6A11h:001Dh
cứ tiếp tục như thế bạn sẽ có vô số các căp D/C LG tương ứng mà ko cần fải tính toán nhiều
Vd: D/C VL là 82A13h
thj' d/c LG tương ứng sẽ là
82A1h:0003h
82A0h:0013h
829Fh:0023h
829Eh:0033h
829Dh:0043h
829Ch:0053h
829Bh:0063h
....
Good luck for T4
Lại bài tập asm nè, mình mới học khó wá... giúp nhe
________________________________________
Câu 1: Giải thích câu lệnh sau và cho biết giá trị của AX sau khi lệnh được thực hiện.
MOV AX, [BX]
Biết ô nhớ có địa chỉ offset = 1222h có nội dung là 5Ah.
Biết ô nhớ có địa chỉ offset = 1223h có nội dung là 6Bh.
Và nội dung thanh ghi BX = 1222h.
Câu 2: Giải thích câu lệnh sau và cho biết giá trị của AX sau khi lệnh được thực hiện.
MOV AX, a[SI]
Biết mảng a được khai báo như sau: a DB 22h, 33h, 44h, 55h, 66h, 77h, 88h, 99h.
Và nội dung thanh ghi SI = 06h.
Câu 3: Đổi các cặp địa chỉ logic sau ra địa chỉ vật lý.
a. 1A69h: 7BC8h
b. 4ECFh: BD72h
Câu 4: Cho Arr DD 10A77Ch, 25674h, 7689Ah, 55E44h, 7B7678h, 9D9567h, 125A5C7h
DD 94F68723h, 12476D34, 0A75279h, 89F34561h.
Và ta có BX = 3, SI = 2, DI = 1.
Xác định nội dung của AX rong các lệnh sau:
a. MOV AX, Arr + 1 b. MOV AX, Arr[BX]
c. MOV AX, Arr[DI] d. MOV AX, Arr[BX+DI+1]
e. MOV AX, Word PTR Arr + 1 f. MOV AX, Word PTR Arr[BX+SI]
g. MOV AX, Word PTR Arr[DI] h. MOV AX, Word PTR Arr[BX+1]
Câu 5: Lập trình nhập 1 xâu ký tự không quá 10 ký tự từ bàn phím. Xâu chỉ gồm: Chữ cái, chữ số, dấu cách trắng. Xâu hiển thị khi nhập phải hợp lệ. Hiện xâu sau khi nhập ở dòng tiếp theo. Đảo ngược xâu vừa nhập, hiện xâu sau khi đảo ra màn hình.
a. Sử dụng các lệnh xử lý xâu.
b. Sử dụng các chế độ địa chỉ.
Câu 6: Cho mảng 2 chiều kiểu byte gồm 5 hàng, 4 cột, viết đoạn chương trình xoá hàng thứ 3 của mảng (mảng chỉ còn 4 hàng, 4 cột).
Câu 7: Lập trình nhập 2 số có 1 chữ số từ bàn phím, nhân 2 số, hiển thị kết quả ra màn hình ở dạng hệ 10.
Câu 8: Lập trình nhập 1 số nhị phân 16 bits từ bàn phím, hiển thị ra màn hình ở dạng hệ 10.
Câu 9: Viết đoạn chương trình Assembly cài đặt mã lệnh giả sau:
Case AL of
1: BX = BX + 5
2: BX = BX + 7
3: BX = BX + 9
END_CASE
Câu 10: Cho 1 mảng A kiểu Word, gồm 15 phần tử. Lập trình thực hiện các côgn việc sau:
a. Tìm phần tử nhhỏ nhất của mảng A.
b. Đựa giá trị phần tử nhỏ nhất ra màn hình ở dạng hệ 16.
c. Đổi chỗ phần tử thứ 2 và thứ 4 của mảng.
d. Đưa giá trị phần tử thứ 3 ra màn hình ở dạng hệ 10.
Câu 11: Cho mảng A khai báo như sau: A DB 10, 30, 40, 50, 60. Lập trình thực hiện các công việc sau:
a. Tìm phần tử có giá trị 20, chèn vào đúng theo thứ tự tăng dần của mảng.
b. Hiển thị mảng sau khi chèn ra màn hình ở dạng hệ 10.
Câu 12: Cho xâu S DB Cong hoa xã hoi chu nghia viet nam.
Viết chương trình đếm số ký tự có trong xâum kể cả dấu cách trắng. Hiện kết quả lên màn hình ở dạng hệ 10.
Bạn đang đọc truyện trên: AzTruyen.Top