实验十 音乐程序
实验目的:
1、掌握PC机发音原理及音乐程序编制方法。
2、8088指令: IN,OUT,DIV,OR
实验内容:
一、发音程序。
1、用DEBUG输入下列程序:
MOV DX,4000H
IN AL,61H
AND AL,FCH
LOP: XOR AL,02H
OUT 61H,AL
MOV CX,0140H
DEY: LOOP LOP
DEC DX
JNE LOP
INT 21H
INT 20H
2、在DEBUG下运行此程序,改变延时时间常数,注意声音高低变化。
二、音乐程序。
1、输入,汇编,连接并运行下列程序:
stacksg segment para stack
dw 32 dup(?)
stacksg ends
datasg segment
tiger db 0ah,0dh,'two tiger。$'
tig_freq dw 2 dup(262,294,330,262)
dw 2 dup(330,349,392)
dw 2 dup(392,440,392,349,330,262)
dw 2 dup(294,196,262),0ffffh
tig_time dw 10 dup(25),50,25,25,50
dw 2 dup(12,12,12,12,25,25)
dw 2 dup(25,25,50)
datasg ends
codesg segment
assume cs:codesg,ds:datasg,ss:stacksg
start: mov ax,datasg
mov ds,ax
lea dx,tiger
mov ah,9
int 21h
lea si,tig_freq
lea bp,ds:tig_time
call play
mov ah,4ch
int 21h
play proc
freq: mov di,[si]
cmp di,0ffffh
je end_ply
mov bx,ds:[bp]
call sound
add si,2
add bp,2
jmp freq
end_ply: ret
play endp
sound proc
mov al,0b6h
out 43h,al
mov dx,14h
mov ax,4f38h
div di
out 42h,al
mov al,ah
out 42h,al
in al,61h
mov ah,al
or al,3
out 61h,al
wait: mov cx,5000
spkr_on: loop spkr_on
dec bx
jnz wait
mov al,ah
out 61h,al
ret
sound endp
codesg ends
end start
2、修改程序,使它能演奏一首你所喜爱的歌曲。
3、若歌曲中有休止符,怎么办?
实验报告:
1、实验记录和体会。
2、自编程序。
《汇编语言程序设计》实验报告(一)
实验报告实验名称专业班级信息安全学号姓名实验一汇编语言上机过程和Debug常用调试命令一实验目的学习程序设计的基本方法和技能熟练掌…
汇编语言实验报告题目1实验方法2用表格形式显示字符3分类统计字符个数4查找电话号码学生学院计算机学院专业班级06学号31学生姓名指…
学生实验报告册20xx20xx学年第1学期实验名称汇编语言程序设计学院信息与电气工程学院班级09级计算机科学与技术2班学号1351…
汇编语言程序设计实验报告实验室S318最后一次实验时间20xx年5月18日第12周星期二12节学院计算机科学与技术学院专业计算机科…
实验七分支程序实验目的1掌握利用间接转移指令JMPBX实现多岔分枝的方法2宏替换指令MACRO及ENDM3符号扩展指令CBW实验程…
计算机组成原理与汇编语言实验20xx指导教师签名一实验原理基本知识简单介绍算法流程计算机组成原理与汇编语言实验20xx计算机组成原…
实验六汇编语言程序上机过程实验目的1掌握常用工具软件PEMASM和LINK的使用2伪指令SEGMENTENDSASSUMEENDO…
学生实验报告册20xx20xx学年第1学期实验名称汇编语言程序设计学院信息与电气工程学院班级09级计算机科学与技术2班学号1351…
实验一1熟悉汇编语言程序调试环境及顺序程序设计一实验目的及要求1学习及掌握汇编语言源程序的书写格式和要求明确程序中各段的功能和相互…