• Domingo 19 de Mayo de 2024, 23:29

Autor Tema:  Problema Con El Espacio Para El Programa  (Leído 2277 veces)

Daisuke

  • Nuevo Miembro
  • *
  • Mensajes: 3
    • Ver Perfil
Problema Con El Espacio Para El Programa
« en: Miércoles 7 de Julio de 2004, 17:22 »
0
Buenas, ya llevo un tiempo en esto de ensamblador, pero nunca me habia topado con esta dificultad, la cual es el espacio para el programa, ya que mi codigo sobrepasa las 1300 lineas de codigo y mas de 2000 localidades, de lo que anduve leyendo esto se aregla ampliando el segmento de datos, pero no se si estare equivocado y no hayo como hacerlo de paso, yo crei que era solo agregandole otro registro pero no es tan asi....

Les pongo las directivas que estoy usando y espero que alguien me ayude pronto....

; ---------------------------------------<Directivas>---------------------------------------
; Procesador
.386
; Segmento de Pila
Stack Segment Para Stack Use16 'STACK'
      db 256 dup(0)
Stack Ends
; Segmento de Código
Code Segment Para Use16 'Code'
      Assume CS:Code
      Assume DS:Code
; Dirección de Inicio:
Org 0100H
Start:      ;Comienzo de Programa
;------------------------------------------------------------------------------------------------
;Aqui va todo el programa
;------------------------------------------------------------------------------------------------
Code Ends
End Start      ;Fin de Programa

REDD

  • Miembro activo
  • **
  • Mensajes: 40
    • Ver Perfil
Re: Problema Con El Espacio Para El Programa
« Respuesta #1 en: Miércoles 7 de Julio de 2004, 18:27 »
0
Hola sabes, no soy un experto en esto pero creo que estas usando un modelo de memoria parecido al de los .COM el cual contienen datos y codigo en un solo segmento tal vez por eso te sea insuficiente, por que intentas con otro modelo de memoria , no se si se pueda poner asi:

.386

; Segmento de Pila
.Stack 256h

; Segmento de Datos
.Data
;------------------------------------------------------------------------------------------------
;Aqui van todos los datos
;------------------------------------------------------------------------------------------------

;Segmento de Codigo
.Code
Start: ;Comienzo de Programa
;------------------------------------------------------------------------------------------------
;Aqui va todo el programa
;------------------------------------------------------------------------------------------------
End Start

REDD

  • Miembro activo
  • **
  • Mensajes: 40
    • Ver Perfil
Re: Problema Con El Espacio Para El Programa
« Respuesta #2 en: Miércoles 7 de Julio de 2004, 18:28 »
0
ahh perdon me falto algo que es lo mas importante creo:
esta linea va hasta arriba y es la que te define el modelo de memoria:

.Model small

Daisuke

  • Nuevo Miembro
  • *
  • Mensajes: 3
    • Ver Perfil
Re: Problema Con El Espacio Para El Programa
« Respuesta #3 en: Miércoles 7 de Julio de 2004, 18:47 »
0
Hice lo que me dijistes, pero siempre me manda error de desbordamiento......

REDD

  • Miembro activo
  • **
  • Mensajes: 40
    • Ver Perfil
Re: Problema Con El Espacio Para El Programa
« Respuesta #4 en: Miércoles 7 de Julio de 2004, 20:26 »
0
en que ensamblador estas trabajando yo lo uso con el TASM y no me marca error lo ensamble de esta manera:

.386

.model small

.stack 256h

.data

.code
start:
int 20h
end start

Super_G

  • Miembro MUY activo
  • ***
  • Mensajes: 375
    • Ver Perfil
Re: Problema Con El Espacio Para El Programa
« Respuesta #5 en: Viernes 9 de Julio de 2004, 12:32 »
0
no creo que sea problema de falta de memoria, pero eso depende de tu programa, ese se arreglaria usando otro modelo de programa  .small .large....
habria que ver el programa, tambien el compilador, ¿puedes poner un ejemplo de programa(completo), con ese mismo formato(para ver si hay error)? y que compilador usas y que pasos haces para compilar el programa.

Daisuke

  • Nuevo Miembro
  • *
  • Mensajes: 3
    • Ver Perfil
Re: Problema Con El Espacio Para El Programa
« Respuesta #6 en: Sábado 10 de Julio de 2004, 00:51 »
0
Yo uso el sim386, que fue un programa que se hizo apra una tesis aqui en mi Universidad....

Lo que estoy haciendo es un tetris, he tratado de migrarlo a otros programas de ensamblador pero me manda error al ensamblarlo o al tratar de hacer el exe...

mas tarde pongo ejemplo del codigo....

LOVO

  • Nuevo Miembro
  • *
  • Mensajes: 4
    • Ver Perfil
Re: Problema Con El Espacio Para El Programa
« Respuesta #7 en: Domingo 18 de Julio de 2004, 21:15 »
0
:kicking:  Hola, no se si esto ayude o no, pero hace unos meses vi un codigo de un cuate, era un antivirus, con bastantes lineas de codigo... y le marcaba un error como el tuyo..
despues de mucho buscarle, termino en una solucion un poco simple, pero funciono, le dio varios saltos al programa y con eso resulto... pruebalo igual y sirve..