⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 piano.asm

📁 用PC机扬声器演奏音乐 了解PC机扬声器系统的电路结构
💻 ASM
字号:
;piano
STACK    SEGMENT
           DB 256 DUP (0)
STACK    ENDS
DATA      SEGMENT
           NOTES DW 9108,8116,7231,6818,6088,5423,4831,4554
;8个字类型数裾分别刘应于l,2,3,4,5,6,7,  i发声频率的计数初值
DATA      ENDS
CODE    SEGMENT
           ASSUME CS:CODE,DS:DATA, SS:STACK
BEGIN:  MOV AX, DATA
           MOV DS, AX
NEXT:  MOV AH,0
          INT 16H           ; 等待键入字符
          CMP AL, 30H         
          JZ EXIT           ; 判断为0则转结束
          SUB AL,31H        ;将键入字符转换为数字l,2,3,…,8
          MOV CL, 2
	  MUL CL		;转换后的数字乘以2
          MOV SI,AX                   
          MOV DX, NOTES [SI]   ;根据计算结果查表取出计时器计数初值   ;打开扬声器
          IN AL, 61H
          OR AL,3
	  OUT 61H, AL
          MOV AL, 0B6H         ;重新初始化汁数器2
          OUT 43H,AL
          MOV AL, DL
          OUT  42H, AL
          MOV AL, DH
          OUT 42H,AL
          JMP  NEXT
EXIT:  IN AL,61H
          AND AL, 0FCH
          MOV AH, 4CH
          INT 21H
CODE ENDS
          END BEGIN

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -