注册 登录
编程论坛 汇编论坛

电子琴程序不能发音

xtxttcl 发布于 2008-05-18 16:00, 1226 次点击
PUSH SI
CMP AL,1
JL QUIT
CMP AL,8
JG QUIT  ;若不在'1'-'8'之间转QUIT,不发音
MOV NUM,AL ;求出相应的时间常数的序号
MOV CX,20 ;取60次32个正弦波数据
DDD:
MOV SI,0
LLL:
MOV AL,DATA1[SI] ;取正弦波数据
MOV DX,IO0832A
out   42h,dl
mov   dl,dh
out   42h,dl

INC SI
CMP SI,32 ;是否取完32个数据
JL LLL ;若没有,则继续
LOOP DDD ;总循环次数60是否完,没有,则继续            
 A:
 MOV DX,PORT1     ;扫描实现任意键暂停
 IN AL,DX   ;读状态
 AND AL,01H ;判断是否有按键
 JNZ FFF;   ;按键延时
 JMP QUIT
FFF: MOV CX,60                                       
    JMP A
QUIT:
POP SI
RET
0 回复
1