elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Recopilación Tutoriales y Manuales Hacking, Seguridad, Privacidad, Hardware, etc


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  ASM (Moderador: Eternal Idol)
| | | |-+  problema con saltos en assembler
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: problema con saltos en assembler  (Leído 3,955 veces)
p4nd4criss

Desconectado Desconectado

Mensajes: 40


Ver Perfil
problema con saltos en assembler
« en: 8 Septiembre 2012, 20:20 pm »

hola a todos
soy novato con el assembler
estoy tratando de resolver este problema. un programa k lea 10 números y guarde en un dirección de memoria el numero de negativos
tengo un problema con el salto. no salta, se supone k salte si el numero es negativo ,para k no llame a la funcion, pero no salta, me pueden dar una sugerencia?
ya intente con todo, ja jb je js jl etc...

Código:
org 100h

vec db -2,1,3,-4,-5,6,-7,8,9,5
                
start:
lea si,vec
mov [400h],0              
mov cx , 10
com:
mov ax,[si]
inc si
mov dX,0
CMP dX,aX
Js menor;<<<aki es donde no salta o salta cuando no debe
ok:
loop com
mov ax , [400h]
mov bx , [401h]
hlt

menor:  
    add [400h],1
    jmp ok  
es assembler para el emu8086
gracias


En línea

~

Desconectado Desconectado

Mensajes: 85


Ver Perfil WWW
Re: problema con saltos en assembler
« Respuesta #1 en: 8 Septiembre 2012, 20:42 pm »

Comparar 0 con AX siempre va a dar igual a cero o negativo.

Código:
mov dX,0
CMP dX,aX


Tal vez si se usa JL:

Código:
JL menor;<<<aki es donde no salta o salta cuando no debe

Pero lo mejor sería poner el pseudocódigo, como algo tipo C, para ver si tiene sentido lo que se trata de hacer.

JL comprueba que SF != OF.

JS solo comprueba que SF = 1.

Aquí SF (bandera de signo) siempre va a ser 1 (o sea número negativo) a menos que AX sea 0 porque con cmp dx,ax, siempre se comprueba la resta de 0-AX.


En línea

Donar con PayPal para que siga trabajando:
https://www.ebay.com/usr/udocproject3

Streams en vivo de programación:
PC 1 - PC 2

http://www.youtube.com/@AltComp126/streams
Nop+

Desconectado Desconectado

Mensajes: 25


Ver Perfil
Re: problema con saltos en assembler
« Respuesta #2 en: 19 Septiembre 2012, 23:28 pm »

Más o menos sería esto, te lo he puesto comentado para que te des cuenta de cada una de las instrucciones



xor      esi,esi
      xor      ecx,ecx
      xor      eax,eax
      xor      edx,edx            ; Inicializamos todos los valores
      mov      ecx,10            ; Le asignamos a ecx contador
            
      bucle:
      mov      ah, byte ptr[Tabla+si]   ; movemos el primer valor de la tabla a eax
      inc      esi               ;Incrementamos el puntero a la cadena
      cmp      ah,0            ; el número es menor que cero?
      jl      negativo         ; Salta si es negativo
      loop   bucle            ;volvemos a empcezar
      jmp      salir
      negativo:
               
      add      edx,1            ; Aquí vamos contando los números negativos que encontramos
      loop   bucle            ; Seguimos mientras el contador no llegue a cero
      salir:
En línea

p4nd4criss

Desconectado Desconectado

Mensajes: 40


Ver Perfil
Re: problema con saltos en assembler
« Respuesta #3 en: 22 Septiembre 2012, 19:37 pm »

gracias por sus respuestas
finalmente me di cuenta k el debia ehacer un salto antes de escrbirnir lo del vector
jmp inicio:
vectob db 1,2,3,4,5
inicio:

para evitar errores
y que debía comparar usando registros de 8 bits
es decir usar al bl cl dl aha bh ch dh
y no usar el registro completo como ax bx cx dx
gracias
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
videos con saltos
Multimedia
ferdipd 0 1,569 Último mensaje 10 Agosto 2006, 16:01 pm
por ferdipd
reproduccion a saltos
Multimedia
dArK_gAp 0 1,740 Último mensaje 20 Agosto 2006, 22:22 pm
por dArK_gAp
Saltos de linea
PHP
zhynar_X 2 5,575 Último mensaje 8 Septiembre 2007, 17:59 pm
por дٳŦ٭
Gif sin saltos de imagen
Diseño Gráfico
Marieges 2 3,685 Último mensaje 29 Junio 2008, 00:13 am
por CHI<`;´>NO©
Saltos de directorio LFI
Hacking
Ancasu 2 3,295 Último mensaje 7 Enero 2017, 14:29 pm
por Ancasu
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines