¿Como desarrollar una calculadora basica en assembler?
| #1 ¿Como desarrollar una calculadora basica en assembler? |
| #2 Re: ¿Como desarrollar una calculadora basica en assembler? |
|
_Eduardo_
|
No hace falta desensamblar el ejecutable, compilas con la opcion -S y te genera directamente el codigo assembler con las instrucciones en C intercaladas como comentarios. Por ejemplo, con el compilador de Borland (es libre) haces directamente: bcc32 -S mi_codigo_c.cpp y te genera mi_codigo_c.asm . Al principio no uses ninguna optimizacion para que te resulte mas legible. |
|||||||||||||
|
|
||||||||||||||
| #3 |
|
pepechip
Colaborador
|
hola
El micro lo unico que sabe hacer es sumar y restar, asi que con estas 2 funciones tendras que realizar el resto. Para sumar y restar tienes comandos especificos para ello (ADD y DECF) Si multiplicas o divides por 10 o multiplo de este, tienes que correr el dado a la izquierda o derecha. Si la multiplicacion es con otro numero tendras que realizar sumas consecutivas. Didivir consiste en restar un numero determinado de veces. No lo tienes nada facil. Suerte. |
|||||||||||
|
|
||||||||||||
| #4 |
|
Jamrix
|
bueno, si entiendo ... lo del producto es con sumas sucesivas y de division es con restas sucesivas, sobre eso tengo el codigo para un simulador, la cuestion es la raiz cuadrada y cubica, el algoritmo que tengo es este:
************************************* leer N contador=1 emp: producto=contador * contador residuo = N - producto if (residuo <= 0) goto sol else contador = contador + 1 goto emp sol: if(residuo=0) resultado = contador else residuo = contador - 1 end ************************************* bueno espero que se entienda, lo "malo" de este algoritmo es que el resultado es entero, es decir, si qyuero sacar la raiz cuadrada de 38, la respuesta es 6 y no 6,1644... y en lo que se refiere a hallar el area de un triangulo no va hallar el area exacta, con la formila de A=sqrt(p*(p-a)(p-b)(p-c)) no se si alguien me puede decir como establecer respuestas con punto flotante, osea con decimales, o es que no se puede hacer esto en assembler, que alguien me diga porfavor y bueno lo de la raiz cubica me imagino que es parecido no? producto=contador*contador*contador tal vez alguien conosca otro algoritmo mas eficaz, que lo publique XD |
|||||||||||
|
|
||||||||||||
| #5 |
|
_Eduardo_
|
Usa las instrucciones del coprocesador matematico. Suma: A + B = C (A,B y C numeros en punto flotante) asm{ fld A ; fld B ; faddp ; fstp C ; } <<- esto es dentro del codigo C Multiplicacion: A * B = C asm{ fld A ; fld B ; fmulp ; fstp C ; } Raiz cuadrada: sqrt(A) = B asm{ fld A ; fsqrt ; fstp B ; } etc.... |
|||||||||||||
|
|
||||||||||||||
|
| Temas de interés | |
|---|---|
| Cargador para auto para IPOD ESPECIFICO | |
| con un programa para el pic 16F84 | |
| chip PWM especifico | |
| TV Sony demora en salir la imagen | |
| El PC crea interferencias en la radio. | |
| Foros de Electronica |
| ||
Cuestiones Elementales de Electrónica ||
Fuentes de alimentacion ||
Circuitos de radio ||
Diseño de circuitos en general || || Sistemas de Audio: Preamplificadores, Ecualizadores || Amplificadores || Reparación || Discusión || || Microcontroladores y sistemas embebidos || Circuitos logicos combinacionales y secuenciales || Interfaces y Programacion || Dudas en general || Sistemas de Video || PC Hardware || Telematica y comunicaciones || Tecnologias moviles || Software Electronico || Robotica, Domotica y Mecatronica || Autotrónica || Automatizacion, Electronica industrial y de Potencia || Documentacion, circuitos y esquemas || Donde Las Ideas Convergen... || Tutoriales y Manuales || Proyectos Prácticos || |
Site Map
© Foros de Electrónica
Comunidad Internacional de Electrónicos
Powered by phpBB © 2001, 2005 phpBB Group
Acerca de || Política de privacidad
© Foros de Electrónica
Comunidad Internacional de Electrónicos
Powered by phpBB © 2001, 2005 phpBB Group
Acerca de || Política de privacidad

