PREGUNTAS CONTESTADAS - Ensamblador

 Hay un total de 123 Preguntas.<<  >> 

    Pregunta:  13023 - COMO MANDO A IMPRIMIR TEXTO DESDE UN PROGRAMA
Autor:  Erik Axel Paco Astudillo
Bueno tengo una duda y es pero que me la puedan aclaran, lo que pasa es que quiero saber como mandar a imprimir un texto desde un programa de ensamblador, o lo que teclee en un programa se imprima al mismo tiempo en la impresora
  Respuesta:  Martín H. Bustos
Hola. ¿Qué tal?.
He probado hacer un programa parecido al que estás buscando pero no puedo lograr que a medida que vaya escribiendo se envién a la impresora. El problema es que cuando imprime un caracter la hoja sale.
Para imprimir un solo caracter hacelo así.

{Ejecutar en Turbo Pascal v. 7.0}
PROGRAM IMPRIMIR;
USES CRT;
BEGIN
CLRSCR;
WRITE(´INGRESE UN CARACTER´);
ASM
MOV AH,00H; {LEO EL CARACTER}
INT 16H; {DEVUELVE EL CARACTER EN AL}
MOV AH,00H; {MANDO A IMPRIMIR}
MOV DL,AL; {LE PASO EL CARACTER A DL}
..... {ME FALTA UN REGISTRO QUE INDICA EL NUMERO DE IMPRESORA, 0 POR DEFECTO EN LPT1}. FIJATE EN CUALQUIER JUEGO DE INSTRUCCIONES CUAL ES YA QUE NO LO TENGO A MANO}
INT 17H;
END;
WRITE(PRESIONE PARA SALIR...´);
READLN;
END.

    Pregunta:  14117 - QUE INTERRUPCION ENVIA Y RECIBE DATOS POR TARJETA DE RED
Autor:  osvaldo meneses mestas
parece que mi duda ya ha sido expuesta con anterioridad.
tengo de tarea investigar las instrucciones para tarjeta de red.si alguien tiene esta información o un programa en ensamblador que me indique las instrucciones, lo agradeceria mucho.
  Respuesta:  wilfredo pérez velázquez
Hola colega:

Por desgracia no tengo a mano el driver de una ethernet ahora, pero te recomiendo que utilices un debugger como el que viene con el turbo pascal 7.0, y cargues el .exe para DOS de los driver de isntalación de la tarjeta(viene con el disco o Cd de instalación). Aunque mi experiencia es en modo real, pues en modo protegido(el que utiliza windows) el acceso a DMA para enviar y recibir bloques de datos no es igual que el de modo real. Es lo único que conozco, aqunque si desensamblas el net.exe de windows 95 o 98, te podrás informar a que nivel este lo hace, es posible que sea contra interrupciones del SO y no por los puertos.

Un saludo

    Pregunta:  14575 - PARTICIONES
Autor:  Elieser Ramirez
Quisiera saber como puedo hacer un programa para hacer particiones en un disco duro, que marca o signos indican la particion
  Respuesta:  wilfredo pérez
Hola colega:

No deseo desanimarte, pero existen herramientas para ello. No obstante puedes descargar un help de ASM donde explica esto bastante detallado y lo puedes encontrar en ftp://www.islagrande.cu

La partición de un disco duro o master boot sector siempre está en el sector 1 cara 0 pista 0 con una longitud de 512 bytes, donde su estructura(de los 512 bytes), es un programa en ASM pequeño que comienza la carga del sistema operativo que exista(de haber alguna partición activa). Te explico esto, pues en esoso 512 bytes se encuentra información de 4 particiones físicas con una logitud de 16 ò 32 bytes cada una si recuerdo bién, pues puedes particionar tu disco duro en 4 particiones, pero de esas una no puede ser extendida. Las extendidas es apuntar a una zona del disco donde se encontrará otros 512 bytes para otras posibles 4 particiones...

Si tienes el diskedit que viene con el paquete del norton(no el antivirus ok), podrías ver estos detalles tanto físicamente como desde el punto de vista lógico, este último concepto lo maneja el DOS y Windows con su famosa FAT 12,16 ó 32 bits...

Para crear las particiones tu mismo ouedes hacerlo desde delphi o Visual basic o ASM directamente...

Un saludo

    Pregunta:  14789 - CONTROLAR DISKETERA EN ASM DEL 8086
Autor:  waka wakatack
Necesito saber cómo hago para manejar una librería de funciones en asm, que tienen el read y el write, y que escriben y leen un sector del disco floppy, la función format, que formatea las 80 pistas, pero no crea ni fat ni nada, y la función seek.
Tengo que hacer el format, y un sistema de archivos que copie archivos de a: a c:, y viceversa, usando sólo las funciones antes comentadas. Lo tengo que hacer en c, pero yo se de c, lo que no sé es manejar el ensamblador dentro de c. Por ejemplo, cóm se llama una función del ensamblador dentro de c?. Supongamos que tengo un segmento de datos, donde está el buffer donde se guarda el sector leído del disco. ¿Como accedo a esa información desde el c?¿Como se accede al segmeto de datos de la libreria ya creada en ensamblador?
Gracias por la atención
  Respuesta:  Martin Candurra
Decime que compilador estas usando.
podes encontrar una guia de Gcc Inline Assembly aca:

http://lawebdelprogramador.com/temas/enlace.php?idp=2036&id=13&texto=C/Visual+C
  Respuesta:  Wilfredo pérez
Hola colega:

Si lo que deseas es copiar ficheros entre dos discos, puedes utilizar la fnciones de la interrupción 21H del DOS, que están incorporadas en windows, pues con la interrupción 13H, tu mismo debes leer la fat de 12 bits y luego localizar los cluster en le disco, la 21H te ahorra todo esto y copia desde cualquier lugar OK...

Para imitar el format del DOS te recomiendo utilices el diskedit(viene con el NC del norton, no el antivirus) para que veas el formato del boot sector, la fat y el directorio raíz, aunque a partir de la versión 5.0 del DOS, el format no utiliza el servicio para formatear, sino que chequea el estado del CRC de sector y de haber problemas entonces formatea, de lo contrario solo escribe el famoso caracter F8 en cada byte de lso 512 de cada sector, claro esta medidad por sector puede variar...

Sobre C, no programo en él...

Un saludo

    Pregunta:  15121 - IMAGEN DE DISKETTES
Autor:  Cristian Alberto Alballay Saez
Hola, Necesito hacer una copia exacta de diskettes (clonacion), esto quiere decir, que hasta las pistas defectuosas se traspasen al disco de destino. si alguien me puede ayudar, con informacion, estare agradeciodo.
  Respuesta:  GOOD SEK
MUY SENCILLO USA EL GOSTH TODOS LOS SECTORES DEFECTUOSOS (DONDE SE INSTALAN LICENCIAS) SE CLONARAN
  Respuesta:  marraski
prueba con rawwrite, es como un clonecd pero para disketes......(utiliza google para encontrarlo)
  Respuesta:  Cesar Quispe
Saludos.

Y te dire que ya somos dos los que Queremos "Clonar " un disco. Te dire que no es nada simple, ya avance algo , te sugiero que visites una pagina de los MEJOR , "EL UNIVERSO DIGITAL", se trata de un libro conpleto en la red.

Es de lo mejor, y encuentras respuesta a todas las preguntas que te puedas imaginar con respecto a ASSEMBLER.

LA DIRECCION ES :

http://meltingpot.fortunecity.com/uruguay/978/

pd. mail: [email protected]

    Pregunta:  15542 - COMO HACER GRAFICOS EN ENSAMBLADOR
Autor:  luis sadot hipolito cruz
ME SERIA DE GRAN UTILIDAD SABER ACERCA DE COMO PUEDO
HACER UNOS GRAFICOS INTERESANTES EN ENSAMBLADOR
  Respuesta:  Wilfredo Pérez
Bueno sobre el vídeo, nuca programé en modo gráfico, pues mis aplicaciones creadas en ASM eran para el modo 80X25 y para trabajar en modo gráfico me quedé hasta la trajeta VGA y a esta puedes acceder físicamente a través de las interrupción 10H con sus servicios, pero para rapidez, debes utilizar los puertos estandar para su acceso, el algoritomo de este acceso depende del modo de vídeo con el que trabajes, es decir 800x600 pixels no se trata igual que 1024X800 pixels, pero son bastantes parecidos...De antemano te advieto que es bastante engorroso trabajar con el OK. No tengo información ahora para enviarte, vale.

Un saludo

    Pregunta:  16144 - COMO HACER UNA DLL EN ENSAMBLADOR
Autor:  jose ugalde
qUISIERA SABER COMO PUEDO HACER UNA DLL EN ENSAMBLADOR PARA PODER UTILIZARLA CON UN LENGUAJE DE ALTO NIVEL COMO VB O DELPHI

GRACIAS.
  Respuesta:  Yoel Ocmin
Crear una Dll en Ensamblador, no es tan complicado como puede parecer, solo tienes que tener en claro para que lo necesitas.
por ejemplo, para manejar el Puerto paralelo y hacaer que rote un bit a su salida desde Visual Basic, tedriasmos que usar una libreria externa que nos permita la opcion de rotar un bit, algo como

.486
.model flat,stdcall
option casemap:none
include windows.inc
include kernel32.inc
includelib kernel32.lib
DLLProc PROTO :DWORD, :DWORD, :DWORD, :DWORD
_ror PrOTO :Byte,:word

.data?
hInstance dd ? ;Dll's module handle
.code
; Common AddIn Procedures
DllEntry proc hInst:HINSTANCE, reason:DWORD, reserved1:DWORD
mov eax, hInst
mov hInstance, eax
mov eax, TRUE
ret
DllEntry Endp
_ror proc dato:byte,veces:word
mov al,dato
mov cx,veces
ror al,cl
ret
_ror endp
End DllEntry

y su correspojndiente archivo nuevaror.def

LIBRARY nuevaror
EXPORTS
_ror

para llamarla desde visualbasic, puedes crear un modulo, y lo llamas

Public Declare Function ror Lib "nuevaror.dll" _
Alias "_ror" (ByVal dato As Byte, ByVal cant As integer) As Byte

Si tuviste algun problema en entender esto, mandame un mail [email protected]
  Respuesta:  Edwin Plauchu
La verdad es que si quieres aprender ha crear una Dinamic link librally (DLL) tendras que hacerla en lenguaje C++, las DLL son funciones que se mandan a llamar solo cuando se necesitan, es una forma de optimizacion de memoria. Borland Delphi ofrece una manera de crear librerias, pero es muy limitada.

La Idea de una libreria es mandar a llamar una funcion en C++. Windows tiene un sistema realizado en C++ y por eso existen DLLs en el

En Assembler solo podras crear objetos.

    Pregunta:  16785 - COPIA ESPEJO DEL DISCO DURO
Autor:  carlos orrego
como puedo hacer una copia espejo de manera correcta de un disco duro a otro sin problema del so y demas programas
  Respuesta:  diego medina
yo le hize con el power quest drive image 2002 y me resulto muy bueno , no se pierde nada de configuraciones ni nada ya que te crea una imagen exacta de tu disco duro o cualquier disco que quieras
la pag es www.power quest.com/
  Respuesta:  Victor Pacheco
Hola!

Existen muchas aplicaciones que realizan esa tarea, la mas completa y transportable, es una llamada GHOST de la empresa Symantec. No se si sea una aplicacion freeware o shareware, trata de conseguirla en esos servidores como CDNET, etc. y si te es muy dificil, mandame un correo y con gusto te la envio.

Saludos!

    Pregunta:  17217 - BUSCAR SUBDIRECTORIOS EN UN DISCO DE 31/2
Autor:  Ana Patricia Gomez Cruz
Entro al sector de arranque y me muestra informacin sobre las tablas FAT, pero como ingreso ala infrmación de las tablas FAt y como muestro en pantalla los subdirectorios
  Respuesta:  wilfredo Pérez
Hola colega,
Bueno en realidad en el sector de arranque aparece cierta información que debes tener en cuenta, aunque para los discos de 3 1/2 este tiene dos formatos predefinidos, uno para los antiguos de 720 K y otro para los de 1.44 Mb. La fat siempre la vas ha encontrar sumando la cantidad de sectores especiales y ocultos, y a esta cifra le debes aplicar el siguiente cálculo:
sector= (Suma de sectores MOD cantidad de sectores por pista)+1
calculo=INT(Suma de sectores / cantidad de sectores por pista)
cara=calculo MOD cantidad de caras del disco
pista= int(calculo / cantidad de caras del disco)

Aqui ya tienes la cara, pista y sector donde está tu primer sector de la primera copia de la FAT. Este cálculo es dado un sector lógico del disco obtener su sector físico en el disco.

Sector lógico es un número único, que no es más que la posición de un sector dentro del total de sectores del disco en general, es decir que no se mira por pista, sectores y caras sino lineal, ejemplo el sector 29 en un disco de 5 1/4(de los viejos) estaría ubicado en sector 3, pista 1 y cara 1. Con sectores físicos puedes utilizar la interrupción 13H del BIOS, pero para lógicos la interrupción 25H y 26H del MS-DOS,, estas últimas son compatible en plataforma windows.

Después que tengas en un buffer la fat, su lectura es algo complicada, yo te enviaré el algoritmo en ensamblador si lo deseas?

Un saludo.

    Pregunta:  17383 - COMO RECUPERO UN ARCHIVO BORRADO
Autor:  Alejandro Morillo
* mi pregunta es como puedo recuperar iun archivo q haya borrado del disco, ya sea en c o ensamblador. yo tengo entendido q cando mandamos borrar un archivo , lo q ghace el sistema es borrarlo solo de la fat, pero los dats siguen estando fisicamente en el disco , pero el sistema ya no los muestra ya q no puede accesar ha ellos, si no es por la fat, ajora mi pregunta es , q tengo q hacer para recuperarlos, acaso debo ir sector por sector, del disco, y como voy ha saber cuando empieza un archivo y donde termina.

*y la otra duda es como formateo un disco, tambien desde c o ensamblador. yo lo unico q se es de la interrupcion 13 servicio 5, q formatea pistas, pero no se si pueda utilizar esta uy como debo utilizarla.


le agradecere mucho a quien pueda ayudarme...

  Respuesta:  juanjo
usa este programa que te recupera todo lo que borraste por equivocacion a mi me fue bien un saludo. espero que te ayude --GetDataBack FAT+NTFS
  Respuesta:  Ricardo Ortega
Saludos.
Recuperar archivos es todo un procedimiento que requiere mucho conocimiento de los formatos FAT12, FAT16, FAT32, NTFS, EXT2, EXT3, etc. y requiere mucha programación.
Te recomiendo primeramente buscar información sobre los sistemas de archivo FAT12 (disquetes) FAT16 (particiones de hasta 2 GB), FAT32, luego usar programas como Norton Diskedit y después de eso sí se puede pensar en crear programas propios para buscar en el directorio la entrada borrada, ir al FAT con el número de cluster indicado, rastrear, buscar, adivinar el siguiente cluster, restituir en directorio y FAT los valores anteriores y cruzar los dedos para que el archivo no haya sido sobreescrito.
Un buen ejemplo de manejo de FAT lo tenemos en el código fuente de linux, en www.sourceforge.net o en los CDs de linux.

|<  <<  1 2 3 4 5 6 7 8 9 10 11  >>  >|