|
Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.
Temas - Victorn
Páginas: [1]
1
« en: Domingo 12 de Noviembre de 2006, 00:29 »
hola a todos, necesito saber como poder insertar un archivo de sonido, tengo un boton por ejemplo y al presionarlo que suene algun sonido al hacer el acto... como hago eso?.. porfavor que alguiien me ayude...
gracias de entemano
2
« en: Domingo 5 de Noviembre de 2006, 23:27 »
hola a todos..
tengo una duda, estoy simulando un marcador de telefonos, el cual presiono un boton 1 y este debe verse en un visor, en un text box... como hago para presionar un boton y trasladar el numero de ese boton a la ventana de texto...
esa es mi duda, ojala me ayuden
3
« en: Lunes 26 de Junio de 2006, 07:50 »
hola a todos...
necesito encontrar esta libreria para poder usarla en el DEV C++, ya q necesito generar numeros grandes......a pesar de que varias personas la ubican no la he podido bajar de internet...
si alguien sabe de donde la puedo sacar, estaria agradecido...!!
gracias de antemano!
4
« en: Lunes 26 de Junio de 2006, 07:49 »
hola a todos...
necesito encontrar esta libreria para poder usarla en el DEV C++, ya q necesito generar numeros grandes......a pesar de que varias personas la ubican no la he podido bajar de internet...
si alguien sabe de donde la puedo sacar, estaria agradecido...!!
gracias de antemano!
5
« en: Viernes 26 de Mayo de 2006, 06:47 »
hola a todos, necesito por favor que alguien me ayude con un programa que utiliza el metodo de Montecarlo o metodo de pollard, tengo hecho el programa en c, de los numeros primos, pero no se como implementar el montecarlo.... si alguien me puede ayudar se lo agradeceria.
De antemano GRACIAS!!
6
« en: Martes 8 de Noviembre de 2005, 16:35 »
PonVector MACRO tipo,rutina CLI MOV AX,0 MOV ES,AX MOV word ptr ES:[tipo * 4], OFFSET rutina MOV word ptr ES:[tipo * 4 + 2 ], SEG rutina STI ENDM ;--------------------------
GuardaVector MACRO tipo,IPviejo,CSViejo
MOV AX,DATA MOV DS,AX MOV AX,0 MOV ES,AX MOV DI,tipo*4
MOV AX,ES:[DI] MOV IPviejo,AX MOV AX,ES:[DI + 2] MOV CSViejo,AX ENDM
;----------------------------------------------------------------------
RestauraVector MACRO tipo,IPViejo,CSViejo
CLI push ax push ds push es push di MOV AX,DATA MOV DS,AX MOV AX,0 MOV ES,AX MOV DI,tipo*4
MOV AX,IPViejo MOV ES:[DI] , AX MOV AX,CSVIEJO MOV ES:[DI+2], AX
pop di pop es pop ds pop ax STI outp(0x43,0x3c); outp(0x40,0) outp(0x40,0);
ENDM
;---------------------------------------------------------------------- DATA SEGMENT
IP8Viejo dw ? CS8Viejo dw ? Fin db 0 cont dw 24 ContInt dw 18 n dw 0 DATA ENDS
;----------------------------------------------------------------------
CODE SEGMENT MIPROG PROC FAR ASSUME CS:CODE, DS:DATA CLI
GuardaVector 8,IP8Viejo,CS8Viejo ; guardo vector del timer antiguo PonVector 8,timernuevo ; pongo el vector dede mi nuevo timer
MOV AX,DATA MOV DS,AX
STI MOV n,48
DENUEVO: Espera: CMP n,"9" JE quit CMP Fin,1 ; ciclo de espera para contar las interrupciones JNZ Espera
INC n push ax push dx mov ah,2; mov dx,n int 21h pop dx pop ax ;imprime n ; imprime el segundo en el que va JE hagocero ; si es = a 5 significa que debo empezar el ciclo
MOV Fin,0 ; coloco en 0 la bandera que me indica que se realizaron ; las 18 interrupciones
MOV ContInt,18 ; coloco el contados de interrupciones en 18
JMP DENUEVO ; salto para empezar el ciclo nuevamente
quit: RestauraVector 8,IP8Viejo,CS8Viejo ; restauro el vector del timer
MOV AX,4c00H INT 21H ;retorno al S.O.
;----------------------------------------------------------------------
timernuevo:
PUSH AX PUSH DS
MOV AX,DATA MOV DS,AX
DEC ContInt ; decremento el contador de interrupciones para ; contar un segundo (18 interrupciones) JNZ Salir MOV Fin,1 ; coloco la bandera FIN en 1 para avisar que se ; cumplieron las 18 interrupciones
Salir:
MOV AL,20H ;comando fin de interrupcion OUT 20H,AL
POP DS POP AX
IRET
;----------------------------------------------------------------------
MIPROG ENDP CODE ENDS END MIPROG
bueno este programa muestra una generacion de numeros del 1 al 9 en un cierto intervalo de tiempo, la pregunta es como lo modifico para que ande mas lento o mas rapido segun los requerimientos, como por ejemplo que genere esos numeros en centecimas de segundos, como lo hago?, ojala me puedan ayudar
como idea se me ocurrio hacer eso, guiandome por este codigo en C
void ISRS::SetTimerFrequency(float hz) { float base=1193180.0; unsigned short word;
base/=hz; byte=(unsigned short)base;
outp(0x43,0x3c); outp(0x40, LOW_BYTE(word)); outp(0x40,HIGH_BYTE(word)); }
pero no se como implementarlo!
7
« en: Miércoles 2 de Noviembre de 2005, 00:00 »
no imprime nada en pantalla!
.MODEL SMALL
.STACK 100
pantalla equ 0b800h ; segmento de memoria de pantalla
interrs segment at 0h org 1ch*4 direc label word ; direccion rutina reloj interrs ends
codigo segment assume cs:codigo, ds:codigo org 100h ; origen por ser fichero tipo COM empezar: jmp instalar ; bifurca a la rutina de iniciacion
hora db 8 dup ('?')
reloj proc cli ; inhibir interrupciones
; restaurar registros
push ax push bx push cx push dx push si push di push ds push es ; ; ; obtener hora de las palabras 40h:6ch (inferior) y 40h:6eh (superior)
mov ax,40h; segmento mov es,ax mov si,6ch ; desplazamiento mov ax,es:[si]; parte inferior contador mov dx,es:[si+2]; parte superior contador mov bx,32771 div bx ;dx=resto, ax=horas*2 shr ax,1 ;ax=horas (dividir entre dos) mov ch,al ; ch=horas ; mov ax,dx mov dx,0 mov bx,1092 div bx ;dx=resto, ax=minutos mov cl,al; cl=minutos¡ ; mov ax,dx mov dx,0 mov bx,18 div bx;dx=resto, ax=segundos mov dh,al;dh= segundos
; poner la hora en formato decimal sobre campo hora
; mov bh,10 ;bh= 10 (constate) mov ah,0 ; ah=0 mov al,ch ; ax=horas div bh; ax=horas en decimal add ax, 3030h mov word ptr hora,ax; mover mov hora+2,':'
mov ah,0 ; ah=0 mov al,cl ; ax=minutos div bh ; ax=minutos en decimal add ax,3030h mov word ptr hora+3,ax; mover mov hora+5,':';
mov ah,0 ;ah=0 mov al,dh ; dh=segundos div bh add ax,3030h mov word ptr hora+6,ax; mover mov hora+8,':'
mov ah,0 ;ah=0 mov al,dl ; dl=sentesimas div bh ;ax=segundos en decimal add ax,3030h mov word ptr hora+9,ax ; mover
;direccionar zona memoria en pantalla con es:[di] ; mov ax,pantalla mov es,ax mov di,2*(80-length hora)
; mover la hora
mov cx, length hora mov si,0 ; desplazamiento inicial
mover: mov al,hora[si] ; caracter campo hora mov es:[di],al; moverlo a memora de pantalla inc di mov byte ptr es:[di], 07h ; mover atributo normal inc si inc di loop mover ;restaurar registros
fin: pop es pop ds pop di pop si pop dx pop cx pop bx pop ax sti ; permitir interrupciones iret ;una interrupcion debe terminar con iret reloj endp ;
instalar proc ;direccionar segmento de vectores de enterrupciones con es
assume es:interrs mov ax,0 mov es,ax
; poner en el vector 1ch=28 la direccion de la rutina del reloj
cli ; inhibir interrupcioones mov direc,offset reloj ; desplazamiento mov direc+2,cs ; segmento
;terminar rutina de instalacion, pero dejar residente la rutina
mov dx,offset instalar; dx=ultima direccion +1 respecto al segmento de la rutina de interrupcion sti ;permitir interrupciones int 27h ; terminar pero dejar residente instalar endp ; codigo ends end empezar
es el codigo del reloj....... y no imprime nada.... porfa alguien lo puede ver, para que me diga cual podria ser el posible error!!
8
« en: Sábado 29 de Octubre de 2005, 21:03 »
hola a todos, estoy haciendo un cronometro que muestre los segudos, minutos y horas, ya tengo hecho el programa que captura la hora del sistema, pero no se me ocurre crear un boton que logre accionar y parar el cronometro.
ojala alguien me ayude!, de antemano muchas gracias.
9
« en: Miércoles 19 de Octubre de 2005, 03:33 »
hola a todos...
toy recien metiendome en el mundo assembler. Necesito que alguien me pueda ayudar, explicandome basicamente que es una macros, sus funciones y si pueden poner ejemplos basicos para enteder mas... ojala alguien me puede ayudar gracias de antemano.
Páginas: [1]
|
|
|