• Lunes 12 de Mayo de 2025, 14:32

Mostrar Mensajes

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.


Mensajes - Super_G

Páginas: 1 ... 6 7 [8] 9 10 ... 15
176
ASM (Ensamblador) / Re: Bus De Datos Del Puerto Paralelo
« en: Miércoles 9 de Junio de 2004, 23:50 »
si; para poder leer datos del puerto paralelo antes debes enviar un numero al puerto de control, el numero exacto puede variar yo lo hago el el # 33(decimal

177
ASM (Ensamblador) / Re: Urgente
« en: Miércoles 2 de Junio de 2004, 00:58 »
La funcion 3fh de la int 21h permite leer archivos:
Código: Text
  1.  
  2. ;;*************
  3. ;****ABRIR******
  4.  
  5.          mov ah,3dh   &#59;funion para ller un archico
  6.          mov dx,offset nombre&#59;nombre de archivo
  7.          mov cx,1         &#59;atributo(solo lectura)
  8.          int 21h             &#59;abre el archivo
  9.          mov H_AR,ax   &#59; retorna el manejador de archivo en ax
  10. ;*******LEER************
  11.          mov ah,3fh      &#59;funcion leer archico
  12.          mov bx,H_AR   &#59;manejador de archivo
  13.          mov cx,1          &#59;numero de bytes a leer
  14.          mov dx,offset buffer&#59;direccion de memoria donde se leera los datos
  15.          int 21h
  16. ;*******************
  17.  
  18. nombre db 'c:\datos.txt',0       &#59;nombre en formato ASIIZ
  19. H_AR dw 0          &#59;localidad para el manejador
  20. buffer db 0          &#59;buffer de lectura
  21.  
  22.  
  23.  
  24.  

178
ASM (Ensamblador) / Re: Urgente
« en: Sábado 29 de Mayo de 2004, 01:42 »
Los datos o numeros que vas a leer de cuantos digitos son??
la ordenacion debe ser de todo el archivo?


Se necesita un algoritmo que transforme los nuemeros del archivo,que son una cadena ASCII, a numeros en decimal(hex,binario...);despues llevar cada numero a un acadena(sin ordenar) y unaves los datos esten en la cadena se hace el ordenamiento, y se almacenan nuevamente los datos en otro archivo.

para el ordeanmiento a en la cadena seira algo asi:

Código: Text
  1.  
  2. ;;;;******en CX elnumero de datos
  3.            mov si,offset cadena
  4.            mov di,offset cadena
  5.            inc si
  6. C2:           push cx    &#59;contador
  7. C1:      mov al,[si]
  8.            cmp al,[di]
  9.            jb    N1
  10.            mov ah,[di]
  11.            mov [di],al
  12.            mov [si],ah
  13. N1:      inc si
  14.            loop C1
  15.            pop cx
  16.            inc di
  17.            mov si,di
  18.            inc si
  19.            loop C2
  20. ;;***************************
  21.  
  22.  
  23.  
  24.  
  25.  
  26.  

179
ASM (Ensamblador) / Re: Mouse Con Assembler
« en: Sábado 29 de Mayo de 2004, 01:27 »
Entoces necesitas hacer tu propio driver de mouse(en DOS)??
si es asi creo que primero debes registrar los datos que el mouse(hardware) envia al PC para esto necesitas saver la "dirección de puerto" segun sea el mouse RS-232, PS/2, USB, son los mas comunes. para elcaso del rs-232 es simplemente la diracion del puerto serial al que esta conectado(COM1, COM2...); para el PS/2 ¿? no lo se es algo que me gustaria saber!!!!. el USB creo que esa informacion se puede sacar del mismo ordenador; Despues nesecitas conocer el protocolo de comunicación en cada caso para PS/2 y RS-232 se comnetan en los siguientes documentos:

http://www.microchip.ru/cdrom/download/app...6c5x/00519c.pdf.


http://www.mechatronics.me.vt.edu/DataShee...assp/40101C.pdf

para USB no tengo idea.
Y por ultimo conociendo elprotocolo de comunicacion Mouse-PC(y el puerto) solo faltaria el entorno que le des al mouse (texto grafico) y algunas funciones basicas.

180
ASM (Ensamblador) / Re: manejo de memoria externa
« en: Martes 18 de Mayo de 2004, 02:34 »
"Memoria externa" externa al uProcesador?
Segun recuerdo el microprocesador(en la acualidad) utiliza primero la memoria cache que es una memoria de alta velocidad pero cara y se encuantra en el encapsulado el uP y es de solo algunos cientos de KBytes. despues esta la memoria principal o memoria RAM que es mas lenta que la anterior pero existe comercialmente de capacidades mas grandes de varios MBytes, esta es la memoria a la que normalmente acedemos lo progrmadores, finalmente la memoria de almacenamiento masivo que se encuentra el los discos duros que es donde se almacena los archivos.

Si bamos a lo que seria el sisteam minimo de un uP tendria su memoria ROM y RAM sus puertos y sus BUSes basicamente, en los distintos puestos estan memorias externas al micro, que utilizan para lamacenar datos que el procesador maneja muy rapido y a voltajes bajos comparados con el de los puertos que son mas lentos, los programadores podemos acceder a la memoria de los puertos por medio de sus direcciones(eso creo); y en ASM con las instrucciones de IN y OUT.

181
ASM (Ensamblador) / Re: CONVERSIONES NUMERICAS
« en: Martes 18 de Mayo de 2004, 02:07 »
Bueno primero "se hace lo que se puede" y "no hay de queso no mas de papa".
y yo no utilizo un emulador sino un compilador que es el TASM de Borland, bajo el DOS de win98. ver 2.0(creo) tambien con el TASM del BorlandC++ 3.11, y alguna ves con el MASM32 de Microsoft.

182
ASM (Ensamblador) / Re: Ordenamiento De Una Cadena
« en: Lunes 10 de Mayo de 2004, 18:21 »
entoces podrias hacer el ordenamiento con mas controles
'A' = 65 ----'Z' = 90
'a' = 97 ----'z' = 122
primero te fijas si es mayuscula o mi nuscula para como proceder. por decir:
.        1  a) si es mayscula le restare 64
             B) si es minuscula le resto 96  
.        2  consulto si es mayuscula o minuscula el num con el que lo comparo
              a) si es mayscula le restare 64
             B) si es minuscula le resto 96  
.         3 comparo cual es menor y hago el ordemaniento, en el momneto de la macenarlo primero debo saber si era mayuscula o minuscula para almacenarlo adecuadamente.

183
ASM (Ensamblador) / Re: Como Cambiar La Hora Del Sistema
« en: Lunes 10 de Mayo de 2004, 16:14 »
INT 1A 01-- - TIME - SET SYSTEM TIME

Copied from Ralf Brown's Interrupt List

Category: B - BIOS

Inp.:
   AH = 01h
   CX:DX = number of clock ticks since midnight


Copied from Ralf Brown's Interrupt List

184
ASM (Ensamblador) / Re: Isr De La Int 33h Del Dos
« en: Lunes 10 de Mayo de 2004, 15:42 »
La verdad no y estoy casi seguro de que no la encontrare, pero se podria intentar "VER" el codigo mediante la captura de su vetor de interrupcion asi teniendo la direccion de alguna forma copiar el codigo(maquina) e intentar entenderla o codificarla en asembler. Yo me encuentro ralizando un proyecto con el mouse(Hardware) y me intereza conocer las direcciones que utiliza un DRIVER de mouse(en windows), de puertos PS/2, conociendo esta informacion, y como ya se como es que el mouse manda la informacion al ordenador intentare hacer mi seudo driver de mouse.

185
C/C++ / Re: Afinador Musical C++
« en: Martes 4 de Mayo de 2004, 17:08 »
Bueno, para empezar no se como podriamos obtener la informacion del microfono, asi que si digitalizamos la señal por nuestra cuenta y madamos por decir al puerto paralelo esatria resuelto esa parte, pero implica uso extra de hardwere; despues almacenar los datos en una arreglo ó matriz para hacer el proceso, tambien se puede guaradr en un archivo, como es un "afinador" supongo que los datos no seran muchos si hacemos la finacion cuerda por cueda(corta duracion), yo diria unos segundos y si las señales estaran en un rango de 400 a 500 Hz(si no me equivoco o confundo) sera necesario una frecuencia de muestreo de digamos 250Hz y con una configuracion basica del ADC0804(100ns) esta parte estaria cubierta ademas de hacer la toma de datos del puerto con un retardo que se satisfactoria para la frecuencia de muestreo. En fin el proceso en si necesitara un algoritmo que detecte que detecte o compare una señal(datos del puerto con otro dato almacenado) y esto no lo conosco, creo que se puede encontrar en lo que se llama el "Procesamiento Digital De Señales".

186
ASM (Ensamblador) / Re: Impresion De Registro En Pantalla
« en: Martes 4 de Mayo de 2004, 16:50 »
"no hay de queso, no'mas de papa"

187
C/C++ / Re: Programación En "turbo C" De Puerto Serie
« en: Lunes 3 de Mayo de 2004, 19:05 »
Jusat mento me encuentro desarrollando un proyecto sobre el "MOUSE" y recieentemente encontre informacion sobre eso en especial lo qu es "el protocolo de comunicacion" del mouse(PS/2), he aqui una buenas paginas:

http://panda.cs.ndsu.nodak.edu/~achapwes/P...ouse/mouse.html
http://www.parallax.com/Downloads/Javelin/...uttonSerial.PDF.
http://www.fiacopetti.it/ps2_16f84_en.htm
http://www.fiacopetti.it/host_ps2_part1.htm

eso esta dirigido para el PS/2 pero al parecer no hay gran diferencia para el RS-232, esto es explicado un poco unos PDFs en www.microchip.com

AN519 (00519c.pdf)
MTA41300(40101c.pdf)

188
ASM (Ensamblador) / Re: Modificar El Codigo Del Prscr (print Screan)
« en: Lunes 3 de Mayo de 2004, 18:28 »
en si mandar a imprimir(por imtpresora) el contenido de la pantalla no es muy dificil con la ayuda de un servicio de DOS es menos complicado(siempre y cuando el DOS no se haga problemas con ciertas impresora por decir  impresorascon puertos USB),de modo que mandamos a imprimir byte por byte y los byte que mandamos a imprimir podemos leer en un arreglo de memria o hacerlo de la mismoa forma byte por byte,leyendo del direccinde memria de la pantalla ubicada en 0b800h(cada caracter de la pantalla esta representado por 2 bytes en memoria  el codigo ASCII y su propiedad color y color de fondo), para esto hay que tener en cuenta lagunos detalles como la resolucion de la pantalla(modo texto,eje:80x25), el orden de la impresion no aumenta tanto la dificultad, haber que tal esto:
Código: Text
  1.  
  2. ;;IMPRIMIR PANTALLA EN MODO TEXTO DE 40x80
  3.                  mov cx,200;;80x25;;# de caracteres a imprimir
  4.                  mov ax,0b800H&#59;;direccion de la pantalla[segmento]
  5.                  mov  es,ax      
  6.                  xor si,si&#59;;puntero a memoria de pantalla[desplazamiento]
  7.         G1:    mov dx,es:[si];;DH->propiedad vvvv DL->caracter
  8.                  mov ah,5 &#59;; servicio para imprimir DL en la imresora
  9.                  int 21h
  10.                  add si,2  &#59;; la lectura de la memoria se hace de 2 en 2      
  11.                  loop G1
  12.        
  13.  
  14.  

eso es basicamente, ahora se puede jugar con el orden de impresion; pero el hecho de como hacer dicha impresion fue la principal duad en este tema pues si se va a sustituir la INT 5h por otra interrupcion se debe alterar el vector de interrupcion......

aqui le dejo el codigo funete + el ejecutable, este se ejecuta e imprime no hece nada con el vector de interrupcion.

189
ASM (Ensamblador) / Re: Impresion De Registro En Pantalla
« en: Lunes 3 de Mayo de 2004, 17:22 »
mostrar el contenido de un registro en la pantalla no es muy dificil eso depende tambien en que formato ponerlo(eje: decimal,hexadecimal, binario), por decir que lo mostramos en decimal:
           
Código: Text
  1.  
  2. ;;;;;;;mostrar el contenido de AL ,en la pantalla, en decimal
  3.             mov bl,10
  4.     c1:   xor ah,ah
  5.             div bl  ;;dividimos entre 10 para separa , por digitos decimales
  6.             mov dl,ah
  7.             add dl,48;; se convierte el digito en ASCII para ser mostrado en pantalla
  8.             mov ah,2;;mostrar caracter
  9.             int 21
  10.             cmp al,0;; si es cero terminar
  11.             jz fin      
  12.             jmp c1;; sino seguir mostrnado los digitos decimales
  13.  
  14.  

190
Visual Basic 6.0 e inferiores / Re: Winsock
« en: Viernes 30 de Abril de 2004, 16:29 »
Talves al recibir los datos haya un error en el tipo de datos como suele pasar.
aqui pongo un codigo de winsock que hice hace algun tiempo, haber si te ayuda.

191
Visual Basic 6.0 e inferiores / Re: Capturar Pantalla
« en: Viernes 30 de Abril de 2004, 16:19 »
Muchas gracias amigos!!!!!!!!!!!!!!!!!

192
C/C++ / Puerto Ps/2 Del Mouse
« en: Miércoles 28 de Abril de 2004, 17:05 »
por favor si hay alguin que me pueda dar este dato:
¿cual es la dirección del puerto PS/2 del mouse?

193
Visual Basic 6.0 e inferiores / Capturar Pantalla
« en: Lunes 26 de Abril de 2004, 16:30 »
¿existe alguna funcion de alguna DLL o del mismo VBASICque me permita capturar la pantalla actual en un archivo BMP?

194
ASM (Ensamblador) / Re: Puerto Serial Ayuda
« en: Lunes 26 de Abril de 2004, 16:20 »
bueno para el cable necesitas un cable NULLMODEM en el que basicamente los cables para el TX y RX estan "cruzados" uno con otro en los pines del DB9

hay mucha informacion sobre esto en la red.

195
ASM (Ensamblador) / Re: Modificar El Codigo Del Prscr (print Screan)
« en: Lunes 26 de Abril de 2004, 16:14 »
antes ¿el programa debe funcoanr con la tecla PRSCR (interrupcion)?
entoces si es asi hay que jugar con la sinterrupciones, de no ser asi pienso que puede ser mas facil:

el proble ma se reduciria a:
leer el los datos de la pantalla que se encuentran en la direccion 0b80h
y despues imprimirlo segun el orden que te pidan utilizando interrupcione d eDOS para imprimir(en este for existe un ejeplo para imprimir por puerto paralelo)
y creo que eso es todo.

196
ASM (Ensamblador) / Re: Juego Del Ahorcado En Ensamblador
« en: Lunes 26 de Abril de 2004, 16:07 »
pues si estas en DOS, utiliza las funciones de la int 21h.

197
ASM (Ensamblador) / Re: Ayuda Para Ocultar Un Proceso
« en: Lunes 26 de Abril de 2004, 15:54 »
lo unico que se me ocurre es que el proceso se active al mismo tiempo que windows, pero no estoy seguro con el win200 y menos con el winxp, en win98 seria junto con el DOS pero no se como poder hacer para que interactue de forma mas poderoza con el mismo windows, ya que esatria muy restringido, talves tambien seria hacer que se ejecute como un virus dentro el mismo kernel del windows pero ese ya es otro negocio.

198
ASM (Ensamblador) / Re: como imprimo con Ensamblador?
« en: Lunes 26 de Abril de 2004, 15:51 »
si mal no recuerdo es en esta parte:

************
d01:
mov ah,9
lea dx,char
int 21h
loop d01


***********

199
ASM (Ensamblador) / Re: Numeros Primos
« en: Lunes 26 de Abril de 2004, 15:49 »
Entoces solo hay que ver si el numero es primo ó no, nada mas:
*********
mov si,offset cadena
mov cl,[si]
mov al,cl
xor ah
eti1: div cl
        cmp ah,0 ;residuo ==0?
        jnz noprimo
        dec cx
        jcxz esprimo
        jmp eti1:

no primo:
;;******
esprimo:
;;*******
*******************
creo qiue eso seria basicamente

200
ASM (Ensamblador) / Re: Calculadora Rpn Basica En Asm
« en: Lunes 26 de Abril de 2004, 15:40 »
existe en el foro bastente informacion sobre calculadoreas en asembler, pero ¿que es una calcuyaldora rpn?

Páginas: 1 ... 6 7 [8] 9 10 ... 15