1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Tài liệu Đáp án môn học Kỹ thuật vi xử lý pptx

4 653 4
Tài liệu được quét OCR, nội dung có thể không chính xác
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Tài liệu đáp án môn học kỹ thuật vi xử lý pptx
Chuyên ngành Kỹ thuật vi xử lý
Thể loại Đáp án bài tập
Năm xuất bản 2009-2010
Định dạng
Số trang 4
Dung lượng 48 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Viết lai thân hàm InsertionSortshort A[].. short N cho dưới đây bằng ASSEMBLY cho 8086... mov |ebxjJledij, al NO CHANGE: inc edi — ; duyệt ký tự tiếp theo END FOR: , khôi phục các thanh

Trang 1

KHOA ĐIỆN TỬ VIÊN THÔNG

BỘ MÔN ĐIỆN TỬ TIN HỌC

MÔN HỌC: KỸ THUẬT VI XỬ LÝ

Học kỳ: 2 Năm học: 2009-2010

ĐÁP ÁN BÀI TẬP VÉ NHÀ SỐ 3

Bai 1 (20 diém) Cho trạng thái của một hệ vi xử lý 8086 nhu sau:

Cac thanh ghi: AX = 4A86, DX = FF6A, BX = 075C, SI = 0008, DI = 000A, CS = 8BBO,

DS = 4636, IP = 0003, FLAGS = 0000

Bộ nhớ:

Địa chỉ vật lý: Giá trị § ô nhớ

Muc a: 15 điểm

Muc b: 5 điêm

a)

CS:0003 02 00

; cong 6 nhé DS:[BX + SI] vao AL

; Label = IP + 04h vi CF=1

b) AX=4AI9h và FLAGS =0011h

Bài 2 (20 điểm)

Muc a: 10 điểm

Mục b: Š di¢m

Muc c: 5 diém

ADD AL, [BX + SI]

Label

ADD AH,[BX + DI + 4|

; công ô nhớ DS:[|BX + DI + 4| vào AH

a) Trước Label3, BX = 0000, CX = 0003, DI = 0000 và các byte từ địa chỉ SS:SP là:

02 00 05 00 06 00

b)

mov [bx][di], al | STR | 2-9 S'S VPS? | VSS VSP LSS | DVS VOL LPG

c) 256

Bài 3 (30 điểm) Viết lai thân hàm InsertionSort(short A[] short N) cho dưới đây bằng

ASSEMBLY (cho 8086)

Trang 2

Tổ chức được vòng WHILE

So sánh 2 phân tử

Chú thích tốt

void InsertionSort(short A[], short N)

{

asm {

mov bx, ss:A mov cx, ss:N

shl cx, 1 mov di,2

FOR:

cmp _ di, cx

mov ax, [bx]|[di]

mov Si, di dec SI dec SI

WHILE:

test si, 8000h

mov dx, [bx][s1]

cmp dx, ax

mov [bx][si+2], dx dec sĩ

dec Si

END_WHILE:

mov [bx][si+2], ax inc di

inc di

END_ FOR:

}

}

Bai 4 (30 diém)

Viét duoc doan main —

Cất các thanh ghi —

Gán địa chỉ của tham số vào ebx —

Kiểm tra điều kiện kết thúc FOR —

Đổi mã ký tự —

Khôi phục các thanh ghi —

10 điểm

5 điểm

5 diém

5 diém

5 diém

5 diém

5 diém

5 diém

5 diém

;hoac cmp

s1, 0

END_ WHILE

Trang 3

stack 100

data

STR DB = 100 DUP(?) — ; char STR[100]

.code

MAIN PROC

mov ax, @data

mov ds, ax

; gets(STR)

mov ah, 10

lea edx, STR

; toupper(STR)

lea eax, STR

push eax

CALL TOUPPER

; puts(STR)

mov ah, 9

lea edx, STR

int 2th

, exit to DOS

mov ah, 4Ch

int 2th

MAIN ENDP

TOUPPER PROC

; cat cdc thanh ghi vao stack, gdn dia chi offset của tham số cho ebx push ebp

mov ebp, esp

push eax

push edi

mov ebx, [ebp + 16]

, duyệt xâu ký tự

xor edi, edi

FOR:

mov al, [ebx][edi] ; al chia ma ky tu dang duyét

; kiểm tra điều kiện kết thúc vòng for

cmp — al, 13

; đổi ký tự thường thành ký tự in hoa

cmp al, ‘a’

cmp al, Z'

sub al, 20h

Trang 4

mov |ebxjJledij, al

NO CHANGE:

inc edi — ; duyệt ký tự tiếp theo

END FOR:

, khôi phục các thanh ghi

pop edi

TOUPPER ENDP

END MAIN

Ngày đăng: 25/01/2014, 09:20

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w