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

 

 


Tema destacado: Introducción a Git (Primera Parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  ASM (Moderador: Eternal Idol)
| | | |-+  Por que esta instrucción (FPU) genera una excepción.
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Por que esta instrucción (FPU) genera una excepción.  (Leído 3,751 veces)
.:UND3R:.
Moderador Global
***
Desconectado Desconectado

Mensajes: 3.118


Ingeniería inversa / MASM


Ver Perfil WWW
Por que esta instrucción (FPU) genera una excepción.
« en: 3 Julio 2012, 03:19 am »

Estoy viendo ejemplos de como utilizar la instrucción FWAIT y me dan el siguiente ejemplo de cuando sería útil:

Código
  1. .data
  2. valEnt DWORD 25
  3. .code
  4. fild ValEnt                   ; carga entero en ST(0)
  5. inc valEnt                    ; incrementa el entero

Me dicen que en el ejemplo mostrado se generaría una excepción.

¿Por qué con la instrucción fild ValEnt se produce tal excepción?.

Saludos


En línea


Solicitudes de crack, keygen, serial solo a través de mensajes privados (PM)
Иōҳ


Desconectado Desconectado

Mensajes: 563


Ver Perfil
Re: Por que esta instrucción (FPU) genera una excepción.
« Respuesta #1 en: 3 Julio 2012, 03:56 am »

Código
  1. valEnt FLOAT 25.0


En línea

Eres adicto a la Ing. Inversa? -> www.noxsoft.net
_Enko


Desconectado Desconectado

Mensajes: 538



Ver Perfil WWW
Re: Por que esta instrucción (FPU) genera una excepción.
« Respuesta #2 en: 3 Julio 2012, 16:27 pm »

Código
  1. valEnt FLOAT 25.0
fild es para INTEGER.
fld para float.


La excepcion se puede producir pero de seguro que el libro es del año 80.

la fpu funciona en paralelo con el cpu.
Entonces puede pasar que la fpu mientras este leyendo el valor valInt la cpu lo esté incrementando... poco probable no se. Pero como no estan sincronizados, puede pasar, nadie te garantiza lo contrario.
En el ejemplo tuyo es poco probable... tendria que haber mas instrucciones de fpu de por medio sin fwait. y luego el inc ValEnt sin fwait.
Lo recomendable es igual, no mezclar instrucciones de la fpu con instrucciones del cpu.
Código:
calculos cpu
calculos fpu
fwait
calculos cpu
De esa manera no hay problemas en ese sentido.

buen tuto
http://www.website.masmforum.com/tutorials/fptute/index.html
« Última modificación: 3 Julio 2012, 16:42 pm por _Enko » En línea

.:UND3R:.
Moderador Global
***
Desconectado Desconectado

Mensajes: 3.118


Ingeniería inversa / MASM


Ver Perfil WWW
Re: Por que esta instrucción (FPU) genera una excepción.
« Respuesta #3 en: 4 Julio 2012, 01:49 am »

Gracias a ambos por la respuesta, me quedo con que por seguridad, al mezclar la FPU con la CPU, debo introducir un FWAIT. Saludos
En línea


Solicitudes de crack, keygen, serial solo a través de mensajes privados (PM)
Иōҳ


Desconectado Desconectado

Mensajes: 563


Ver Perfil
Re: Por que esta instrucción (FPU) genera una excepción.
« Respuesta #4 en: 25 Julio 2012, 03:47 am »

Sip tienes razón _Enko no sé como se me pasó u.u

Código
  1. fild dword ptr [valEnt]
En línea

Eres adicto a la Ing. Inversa? -> www.noxsoft.net
_Enko


Desconectado Desconectado

Mensajes: 538



Ver Perfil WWW
Re: Por que esta instrucción (FPU) genera una excepción.
« Respuesta #5 en: 25 Julio 2012, 04:20 am »

Sip tienes razón _Enko no sé como se me pasó u.u

Código
  1. fild dword ptr [valEnt]
Ahora iras al infierno y programaras en javascript por una eternidad  >:D
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
¿Como pasar esta excepcion?
Ingeniería Inversa
ViCrack€r 2 2,220 Último mensaje 21 Agosto 2005, 04:53 am
por tena
Siempre me genera una excepcion
Ingeniería Inversa
Ch@CaL 2 2,117 Último mensaje 24 Enero 2007, 15:37 pm
por Ch@CaL
Analizemos esta instrucción
PHP
SpiderNet 6 2,765 Último mensaje 17 Septiembre 2008, 02:59 am
por Rentero
que es esta excepcion extraña al cerrar un JDialog con Netbeans
Java
kinos 2 4,796 Último mensaje 31 Enero 2010, 18:21 pm
por kinos
Por que esta instrucción no es válida?
ASM
.:UND3R:. 4 3,586 Último mensaje 21 Noviembre 2011, 04:18 am
por .:UND3R:.
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines