problemas resueltos en ensamblador basicos pero buenos

Ver el tema anterior Ver el tema siguiente Ir abajo

problemas resueltos en ensamblador basicos pero buenos

Mensaje por viviana muñoz el Vie Nov 09, 2007 11:04 pm

[code]#make_COM# ;ESTE PROGRAMA RECIBE UN ARREGLO DE
;NUMEROS Y DEVUELVE DE MENOR A MAYOR

include 'emu8086.inc'
ORG 100h


JMP INICIO()
;Declaración de variables
largo DW 0
array1 DW 100 DUP(0)
array2 DW 100 DUP(0)



INICIO():

CALL PTHIS
DB 13, 10, 'Ingrese largo de array1 (mayor que 2): ', 0

CALL scan_num ;Lee el largo del teclado

;Si largo es menor que 2 pide otro largo
CMP CX,2
JL INICIO()

ADD CX,CX
MOV largo, CX ;Guarda el largo


CALL PTHIS
DB 13, 10, 'Ingrese elementos del array1: ', 0
MOV SI,0 ;Indice puesto en cero

LEER_ARRAY():
PUTC 13
PUTC 10 ;Imprime una nueva linea
CALL scan_num ;Lee un número de teclado

MOV array1[SI],CX ;Se guarda el número ingresado en array1
ADD SI,2 ;Incrementa el indice
CMP SI,largo ;Lee mientras SI sea menor que largo
JB LEER_ARRAY()

JMP IMPRIMIR_COPIAR() ;Imprime el arreglo recién ingresado y lo copia en array2


SORTNUM():

;Se copia un caracter
MOV DX, array2[SI]

;Si se llega al final del string
CMP SI, largo
JE RESULTADO()

;Se actualiza el indice dos
MOV DI,SI

BUSCAR_MENOR():

;Se copia un caracter
MOV CX,array2[DI]

;Si se llega al final del string
CMP DI, largo
JE TERMINAR()

;Si DX es menor que CX
CMP CX,DX
JL CAMBIAR()

;Para ordenar de la otra forma
;Si DX mayor que CX
;CMP DX,CX
; JE CAMBIAR();

;El indice dos se incrementa en uno
ADD DI,2

;Sigue buscando otro menor
JMP BUSCAR_MENOR()


TERMINAR():
;Se guarda el mayor en array2
;MOV array2[SI],DX

;El indice uno se incrementa en uno
ADD SI,2

;Se reviza el sigiente caracter
JMP SORTNUM()




CAMBIAR():
;Se ordenan los números
MOV array2[SI],CX
MOV array2[DI],DX
;Se guarda el número mayor en DX
MOV DX,CX

;Sigue buscando otro menor
JMP BUSCAR_MENOR()




IMPRIMIR_COPIAR():
MOV SI,0 ;Indice puesto en cero
CALL PTHIS
DB 13, 10, 'Arreglo original (array1): ',13,10,0

WHILE():
MOV AX,array1[SI] ;Se guarda un número de array1 en AX
MOV array2[SI],AX ;Se copia array1 en array2
CALL print_num ;Imprime AX
PUTC 32 ;Imprime un espacio
ADD SI,2 ;Incrementa el indice
CMP SI,largo ;Lee mientras SI sea menor que largo
JB WHILE()

MOV SI,0 ;Indice puesto en cero
JMP SORTNUM()




RESULTADO():
MOV SI,0 ;Indice puesto en cero
CALL PTHIS
DB 13, 10, 'Arreglo ordenado (array2): ',13,10,0

FOR():
MOV AX,array2[SI] ;Se guarda un número de array1 en AX
CALL print_num ;Imprime AX
PUTC 32 ;Imprime un espacio
ADD SI,2 ;Incrementa el indice
CMP SI,largo ;Lee mientras SI sea menor que largo
JB FOR()


;Termina la ejecución del programa
FIN():
RET
DEFINE_SCAN_NUM
DEFINE_PRINT_NUM
DEFINE_PRINT_NUM_UNS
DEFINE_PTHIS
END

viviana muñoz
Leecher

Cantidad de envíos: 5
Fecha de inscripción: 09/11/2007

Ver perfil de usuario

Volver arriba Ir abajo

Re: problemas resueltos en ensamblador basicos pero buenos

Mensaje por sebanarko el Vie Dic 07, 2007 8:55 pm

siempre leo estos kodigos y no kaxo nah xD

sebanarko
Capa 8
Capa 8

Cantidad de envíos: 199
Edad: 26
Localización: en los dci...
Año de ingreso a la carrera: 2006
Fecha de inscripción: 06/12/2007

Ver perfil de usuario

Volver arriba Ir abajo

Re: problemas resueltos en ensamblador basicos pero buenos

Mensaje por kaosazul el Vie Sep 05, 2008 2:09 am

xuxa son basicos y no caxo na jajaja
a la mala habra q aprender no mas

kaosazul
Capa 8
Capa 8

Cantidad de envíos: 139
Año de ingreso a la carrera: 2006
Fecha de inscripción: 05/05/2008

Ver perfil de usuario

Volver arriba Ir abajo

Re: problemas resueltos en ensamblador basicos pero buenos

Mensaje por Rodrilord el Vie Sep 05, 2008 2:28 am

no es tan peludo cabros, yo no recuerdo haber aprendido, pero si al menos entendi varias weas, pero de que estudie, si xD! más que la rexuxa!!! así que pongance las pilas con los manuales y a ver las Direcciones que son pa cada cosa y weas Wink xD!

_________________

Rodrilord
L33t Pro
L33t Pro

Cantidad de envíos: 1480
Edad: 28
Año de ingreso a la carrera: 2005
Fecha de inscripción: 10/11/2007

Ver perfil de usuario

Volver arriba Ir abajo

Re: problemas resueltos en ensamblador basicos pero buenos

Mensaje por manowar el Vie Sep 05, 2008 3:21 am

yo caxo k lo primeros es el hola mundo xD

Código:
.model small
.stack
.data
message  db "Hello world, I'm learning Assembly !!!", "$"

.code

main  proc
  mov  ax,seg message
  mov  ds,ax

  mov  ah,09
  lea  dx,message
  int  21h

  mov  ax,4c00h
  int  21h
main  endp
end main

_________________
in the flesh......

manowar
L33t Pro
L33t Pro

Cantidad de envíos: 1933
Localización: TALk =)
Año de ingreso a la carrera: 2007
Fecha de inscripción: 07/11/2007

Ver perfil de usuario http://www.lalala.com

Volver arriba Ir abajo

Re: problemas resueltos en ensamblador basicos pero buenos

Mensaje por funketefred1 el Vie Sep 05, 2008 7:16 am

puta yo tenia varios.... los encuentro y los subo

_________________

funketefred1
Master User

Cantidad de envíos: 10351
Edad: 31
Localización: lejos de la U
Año de ingreso a la carrera: 2004
Fecha de inscripción: 13/11/2007

Ver perfil de usuario

Volver arriba Ir abajo

Re: problemas resueltos en ensamblador basicos pero buenos

Mensaje por sebanarko el Vie Sep 05, 2008 10:23 am

ojala los subas se agradeceria, todo sirve xD

sebanarko
Capa 8
Capa 8

Cantidad de envíos: 199
Edad: 26
Localización: en los dci...
Año de ingreso a la carrera: 2006
Fecha de inscripción: 06/12/2007

Ver perfil de usuario

Volver arriba Ir abajo

Re: problemas resueltos en ensamblador basicos pero buenos

Mensaje por funketefred1 el Vie Sep 05, 2008 2:19 pm

aunq lei ese y la verdad q no se q mierda hace,pero hace algo

_________________

funketefred1
Master User

Cantidad de envíos: 10351
Edad: 31
Localización: lejos de la U
Año de ingreso a la carrera: 2004
Fecha de inscripción: 13/11/2007

Ver perfil de usuario

Volver arriba Ir abajo

Re: problemas resueltos en ensamblador basicos pero buenos

Mensaje por chicox el Vie Sep 05, 2008 4:13 pm

lo primero es saber
q hace

JMP
MOV
CALL
CMP
JNE
ADD

etc...
no es tan complicado

_________________
chupalo

chicox
L33t
L33t

Cantidad de envíos: 840
Año de ingreso a la carrera: 2004
Fecha de inscripción: 31/10/2007

Ver perfil de usuario http://pinguinux.cl

Volver arriba Ir abajo

Re: problemas resueltos en ensamblador basicos pero buenos

Mensaje por sebanarko el Dom Sep 07, 2008 3:34 pm

ok grax ...

sebanarko
Capa 8
Capa 8

Cantidad de envíos: 199
Edad: 26
Localización: en los dci...
Año de ingreso a la carrera: 2006
Fecha de inscripción: 06/12/2007

Ver perfil de usuario

Volver arriba Ir abajo

Ver el tema anterior Ver el tema siguiente Volver arriba

- Temas similares

Permisos de este foro:
No puedes responder a temas en este foro.