使用以下汇编代码可以生成一个锯齿波:Mov dx,portd Mov al,0ffh Repeat:Inc al Out dx,al JMP repeat 若要改变锯齿波的周期,可以使用NOP或延时指令来控制。例如:Mov dx,portd Mov al,0ffh Repeat:Inc al Out dx,al Call delay1 JMP repeat Delay1:Mov cx,data1 Delay2:Loop delay...
CALL DELAY2 LOOP Y2 MOV AH,1;待定,有键按下退出 INT 16H JZ S MOV AH,4CH INT 21H ;回到起始状态,不断循环 DELAY1 PROC NEAR ;短延时子过程 PUSH CX ;CX入栈保护(保护外循环次数) MOV CX,08000H ;置LOOP次数 T:LOOP T ;跳转至本身,延时作用 POP CX ;CX出栈 RET ;返回 DELAY1 ENDP DELAY...
1;中断时的入栈顺序是pushf,push cs, push ip2assume cs : codesg, ss : stacksg34stacksg SEGMENT5dw64dup (0)6stacksg ENDS78910codesg SEGMENT1112start:;改变中断向量到本程序中的中断例程处13movax,014moves, ax15movax, stacksg16movss, ax17movsp,6418movds, ax1920;分别将中断程序cs:ip入栈ds...
CALL DELAY jmp back b2: mov dx,c_port in al,dx test al,00000100b jnz li call xianshicj call display_dec mov cx,1 jz next2 mov si,6 dec cx next2: call delay jmp back li: mov buf,0 ;清0 mov buf+1,0 mov buf+2,0 mov buf+3,0 mov buf+4,0 mov buf+5,0 mov dat2,0...
若延时不是秒的10数次倍,误差稍微大点)Delay Proc Nearpush dxpush cxxor ax,axint 1ahmov cs:Times,dxmov cs:Times[2],cxRead_Time: xor ax,axint 1ahsub dx,cs:Timessbb cx,cs:Times[2]cmp dx,Didasjb Read_Timepop cxpop dxretTimes dw 0,0Delay ...
CODESEGMENTASSUMECS:CODE,DS:DATASTART:MOVAX,DATAMOVDS,AX;设置8255工作方式MOVDX,PORTDMOVAL,REGISOUTDX,AL;设置输出端口为端口AMOVDX,PORTAG1:;取LED数组的首地址MOVSI,OFFSET LEDG2:MOVAL,[SI]OUTDX,AL;输出显示;延时操作CALLDELAY;如果当前值等于数组最后一个数的值则从头开始CMPAL,0BFHJEG1;地址加一...
=列号*5+ 行号;键值存放在DL存放器中KEYVALUE PROCPUSH AXMOV AL,0FFHOUT 42H,ALCALL DELAYCALL DELAYCALL DELAYMOV AL,00HOUT42H,ALPOP AXMOVdl,lMOVDH,HMOVAL,5MULDL;列号乘5MOVDL,ALADDDL,DHCMPDL,0JZQICMPDL,1JZBACMPDL,2JZJIUCMPDL,5JZSHCMPDL,6JZWUCMPDL,7JZLIUCMPDL,9JZJISHU_CALL ;自动计数...
23、 al,0 out dx,al ;关所有八段管 mov al,bx mov dx,OUTSEG out dx,al mov dx,OUTBIT mov al,ah out dx,al ;显示一位八段管 push ax mov ah,1 call Delay pop ax shr ah,1 inc bx dec cl jnz DLoop mov dx,OUTBIT mov al,0 out dx,al ;关所有八段管 retDelay: ;延时子程序 push...
CALLDELAY1 CALLDELAY1 LEASI,LEDTAB MOVBL,BUF+1 MOVBH,0 MOVAL,[BX][SI];取十位段码 notal MOVDX,A_PORT OUTDX,AL;用数码管显示十位 MOVAL MOVDX,B_PORT OUTDX,AL CALLDELAY MOVAL,0H MOVDX,B_PORT OUTDX,AL CALLDELAY1 LEASI,LEDTAB ...
call delay jmp select ;--- ;delay ;定义延时子程序 ; pushcx ; push ;movcx, ; d1:movbx,0fh ; d2:decbx ;jnz d2 ;pop bx ;popcx;ret ; endp ;--- delay:延时程序 pushf bx push cx保护现场 mov bx,0e0h lp2: movcx ,176h lp1: pushf;标志入栈 popf ;标志...