МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ
Національний університет Львівська політехніка
Кафедра САПР         
Звіт
До лабораторної роботи № 9
З курсу “Архітектура комп’ютерів”
На тему:
«Програмування виводу на екран на ЕОМ з  мікропроцесором Intel 8086 (80286)».
	
Тема роботи:
Програмування виводу на екран на ЕОМ з  мікропроцесором Intel 8086 (80286).
Мета роботи:
Вивчити основні можливості керування екраном в текстовому та графічному режимах.
Теоретичні відомості
___________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________
Лабораторне завдання:
Написати програму, в якій виводятся на екран всі кольори у вигляді квадрату. Кількість кольорів – 255. Керування квадратом повинно здійснюватися за допомогою клавіш керування курсором.
Хід роботи
Для реалізації поставленого завдання мною була розроблена наступна програма:
LAB9.ASM
.model tiny
.code
org 100h
start:	mov	bx,24120
	mov	ax,13h
	int	10h
	
repit:	call	clear
	call	kvadrat
		
cukl:	call	copy     
	xor ax,ax
	mov ah,11h
	int 16h
	jz cukl
	
	mov	ax,1000h
	int	16h
	cmp	ah,4dh
	je	right
	cmp	ah,4bh
	je	left
	cmp	ah,48h
	je	Up
	cmp	ah,50h
	je	Down
	cmp	ah,01h
	je	exit
	
	jmp	cukl
right:	xor	dx,dx
	mov	ax,bx
	div	n
	cmp	dx,303
	JE	repit
	add	bx,1
	jmp	repit
left:	xor	dx,dx
	mov	ax,bx
	div	n
	cmp	dx,0
	JE	repit
	sub	bx,1
	jmp	repit
Up:	xor	dx,dx
	mov	ax,bx
	div	n
	cmp	ax,0
	JE	repit
	sub	bx,320
	jmp	repit
Down:	xor	dx,dx
	mov	ax,bx
	div	n
	cmp	ax,183
	JE	repit
	add	bx,320
	jmp	repit
exit:	mov	ax,04c00h			
	int	21h
copy:	mov	ax,0a000h
	mov	es,ax
	mov	cx,64000
        mov	di,0
        mov	si,offset video
        rep	movsb  
	ret
kvadrat: 
	mov	cx,16
	mov	di,bx
	mov	ax,0
l1:	push	cx
	mov	cx,16
l2:	mov	byte ptr video[di],al
	inc	al
	inc	di
	loop	l2
	add	di,304
	pop	cx
	loop	l1
	ret
clear:	mov	ax,cs
	mov	es,ax
	mov	cx,64000
	mov	al,0
	mov	di,offset video
   	rep	stosb
	ret
video	db	64000	dup(0)
n	dw	320
end start
Після набору тексту програми в текстовому редакторі її було збережено у файл LAB9.ASM. Після цього зкомпільована та злінкована за допомогою bat файлу, в якому було прописано наступні команди:
tasm.exe /zi lab9.asm
tlink.exe /t /v lab9.obj
lab9.com
pause
td.exe lab9.com
Після того як програма завантажилась мною було поглянуто результати.
Висновок:
Під час виконання лабораторної роботи мною було засвоєно матеріал по темі: “Програмування виводу на екран ЕОМ з  мікропроцесором Intel 8086 (80286)”. Я вивчив основні можливості керування екраном в текстовому та графічному режимах, отримав практичні навички складання і налагодження програм повязаних з програмуванням системного таймера 8253/8254 та роботи з годинником реального часу.