|
![]() | 作者: hackerkill [hackerkill]
![]() |
登录 |
有怎么一段汇编程序!是可以有音乐的!可是我调试的时候可以成功!但是就是没有声音! 请知道的朋友帮忙看看!急死我了!我在线等回复!! 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 [此贴被 寒月清风(hackerkill) 在 06月21日20时34分 编辑过] [此贴被 286(unique) 在 06月22日15时37分 编辑过] |
地主 发表时间: 04-06-21 20:34 |
![]() | 回复: hackerkill [hackerkill] ![]() |
登录 |
我真的很急啊 希望有高手指点 |
B1层 发表时间: 04-06-22 13:08 |
![]() | 回复: 286 [unique] ![]() |
登录 |
title gensound public gensound cseg segment para 'code' assume cs:cseg gensound proc far push ax push bx push cx push dx push di mov al,0b6h out 43h,al mov dx,12h mov ax,3280h div di out 42h,al mov al,ah out 42h,al in al,61h mov ah,al or al,3 out 61h,al wait1: mov cx,55afh delay: loop delay dec bx jne wait1 mov al,ah out 61h,al pop di pop dx pop cx pop bx pop ax ret gensound endp cseg ends end |
B2层 发表时间: 04-06-22 15:36 |
![]() | 回复: hackerkill [hackerkill] ![]() |
登录 |
天啊!我太激动了!对斑竹那么热心的帮助我非常的感激啊! 谢谢了! 但是我把你的源代码汇编完以后! 点击生成的EXE文件 显示是DIVIDE OVERFLOW 请问一下这是什么意思呢? [此贴被 寒月清风(hackerkill) 在 06月23日01时05分 编辑过] |
B3层 发表时间: 04-06-23 01:02 |
![]() | 回复: hackerkill [hackerkill] ![]() |
登录 |
当然我来这也并不是要你的原代码的! 要不又得挨骂了! 所以我想再贴出一个音乐程序了! 同样遇到了问题! 也请朋友们帮帮忙! DATAseg SEGMENT para 'data' LOWD DW 131 LOWDD DW 147,165,175,196,220,247 MID DW 262 MIDD DW 294,330,349,392,440,494 HGH DW 523 HGHD DW 587,659,797,783,879,987,1046 MUS_FREQ DW 440,392,330,392,523,440,392,440 DW 330,392,440,392,330,262,220,392 DW 330,2 DUP(294),330,2 DUP(392),440,330 DW 294,262,392,330,294,262,220,262,196 DW -1 MUS_TIME DW 37,12,3 DUP(25),2 DUP(12),50 DW 25,2 DUP(12 ),2 DUP(25),4 DUP(12 ),50 DW 37 ,12 ,25,2 DUP(12 ),2 DUP(25),50 DW 37 ,5 DUP(12 ),100 dataseg ends CODEseg SEGMENT para 'code' main proc far ASSUME DS:DATAseg,CS:CODEseg START: CALL PLAY_SONG CALL EXIT PLAY_SONG PROC NEAR PUSH BP PUSH SI PUSH BX PUSH DI PUSH AX LEA BP,MUS_TIME LEA SI,MUS_FREQ JMP FREQ FREQ: MOV AH,01H INT 16H CMP AH,1CH JNZ CONTINUE JMP PLAY_END CONTINUE: MOV AH,0CH MOV AL,06H INT 21H MOV DI,[SI] CMP DI,-1 JE PLAY_END MOV BX,[BP] CALL GEN_AUTO ADD SI,2 ADD BP,2 JMP FREQ PLAY_END: POP AX POP DI POP BX POP SI POP BP RET PLAY_SONG ENDP GEN_AUTO PROC NEAR PUSH AX PUSH BX PUSH CX PUSH DX PUSH DI MOV AL,0B6H OUT 43H,AL MOV DX,12H MOV AX,348CH DIV DI OUT 42H,AL IN AL,61H MOV AL,AH OUT 42H,AL IN AL,61H MOV AH,AL OR AL,3 OUT 61H,AL WAIT2: DEC BX JNZ WAIT2 MOV AL,AH OUT 61H,AL POP DI POP DX POP CX POP BX POP AX RET GEN_AUTO ENDP EXIT PROC NEAR MOV AH,4CH INT 21H RET EXIT ENDP main endp CODEseg ENDS END main [此贴被 寒月清风(hackerkill) 在 06月23日01时06分 编辑过] |
B4层 发表时间: 04-06-23 01:04 |
![]() | 回复: programlive [coolcall] ![]() |
登录 |
你上面的应该是内存溢出,分配问题吧 |
B5层 发表时间: 04-06-23 09:57 |
![]() | 回复: hackerkill [hackerkill] ![]() |
登录 |
这也不是很清楚我! 可以想帮忙找找斑竹的那个程序的错误来吗? 恩!我的第一道程序应该错误不多的! 可以帮忙改下吗朋友? 我的第二的程序是自己写的肯定错误百出!有时间的朋友也可以帮忙看看啊! 我也希望懂这的朋友和我交流啊!我的QQ是 2597027 |
B6层 发表时间: 04-06-23 10:27 |
![]() | 回复: 286 [unique] ![]() |
登录 |
你所说的没声音,可能性太多,所以你一点一点排除吧。 1 首先,你的声音应该是从PC Speaker上发出的吧?你看看PC Speaker能不能发声, c:\>echo ^G^G^G 如果有三声响,表示声音是可以发出的。^G是Ctrl+G。 2 看别的程序是不是能响,置顶贴里有个用键盘模拟电子琴的,你运行试试,看是不是在Windows下这种直接访问端口地址的程序不让运行。 3 把程序简化,只发一个音就退出,看是否发音。 4 。。。。。到时候再说吧。 |
B7层 发表时间: 04-06-23 17:41 |
![]() | 回复: lizhanshuo [lizhanshuo] ![]() |
登录 |
斑主 把思路写出来吧 |
B8层 发表时间: 04-06-23 20:37 |
|
20CN网络安全小组版权所有
Copyright © 2000-2010 20CN Security Group. All Rights Reserved.
论坛程序编写:NetDemon
粤ICP备05087286号