当前位置:首页 > 微机原理实验报告与程序
mov pao,1 jmp man2
man1: mov al,sudu mov ah,0
x1: mov cx,[bp] x2: dec cx jnz x2 push si pop si dec ax jnz x1 pop dx pop ax pop cx ret delay endp
shimyn proc near push ax push bx push cx push dx push si
mov ax,data mov ds,ax pop si pop dx pop cx pop bx pop ax ret
shimyn endp
de8 proc near ;延时子程序 mov dx,io8255e
mov al,88h ;设8255为A口输出,C口输出 out dx,al
push dx
mov dx,io8255c ;设8253计数器为1方式3 mov al,36h out dx,al
mov dx,io8255a
mov ax,10000 ;写入计数器初值10000 out dx,al
13
mov al,ah out dx,al
mov dx,io8255c
mov al,70h ;设计数器2为工作方式0 out dx,al
mov dx,io8255b
mov ax,100 ;写入计数器初值500 out dx,al mov al,ah out dx,al
mov dx,28ah
in al,dx ;查询8255的PA0是否为高电平 test al,80h pop dx
ret ;定时时间到,子程序返回 de8 endp
start11 proc near push ax push bx push cx push dx
cmp huacx,639 ;一行是否满 jne chu
mov ax,0012h
int 10h ;清屏 mov huacx,0
mov cx,0 ;cx为横坐标 chu: pop dx pop cx pop bx pop ax ret
start11 endp huabo proc near push ax push bx push cx push dx push si
mov ax,0012h ;设屏幕显示方式为VGA 640X480模示 int 10h
14
mov ax,0600h
int 10h ;清屏
and cx,0 ;cx为横坐标 ; mov clear,2000h
ll: mov si,offset sin ;置正弦波数据的偏移地址为SI mov num,32
;一组输出32个数据
lll: mov al,[si] ;将数据输出到D/A转换器 mov dx,io0832a out dx,al push ax
mov dx,io0809b ;启动A/D转换器通道1 out dx,al
mov dx,io0809b in al,dx
drawt: cmp nflag,1 je u700
cmp naozflag,1 je u1000 jmp ppo u700:call u7 u1000:call chang
ppo: mov bx,1000h;500 ;延时 delay1t:
dec bx
jnz delay1t ;pop bx
mov ah,0
mov dx,368 ;dx为纵坐标 sub dx,ax
mov al,0ah ;设置颜色 mov ah,0ch ;画点 int 10h
huat: inc cx ;继续画点 push dx pop dx
15
pop ax yut: push cx mov cx,01h
yanshit:call huashi loop yanshit pop cx
inc si ;取下一个数据 dec num
jnz lllp ;若未取完32个数据则转lll jmp ll lllp:
jmp lll chuchu2: pop si pop dx pop cx pop bx pop ax ret
huabo endp huashi proc near push ax push bx push cx push dx push si push ax
jixux:mov al,sudu mov jiji2,al pop ax xianxuehao:
push ax
cmp jihao,79 jg chaog2 jmp cont4
chaog2:mov jihao,0 cont4:mov al,jihao mov jixuehao,al pop ax
mov ah,01h push cx mov cx,08h
16
共分享92篇相关文档