Вы находитесь на странице: 1из 19

Universidad Mayor de San Simn

Taller de Programacin en Bajo Nivel

Laboratorio
introduccin a Fasm

Dayne Lorena Guerra


Guerra.dayne@gmail.com

HISTORIA DE LOS REGISTROS EN x86


Ao 1960: 8080
Registro A de 8 bits
Ao 1980: 8086
Registro AX de 16 bits
Ao 1985: 80386
Registro EAX de 32 bits
Ao 2000: x86_64
Registro RAX de 64 bits
Ao 2013: Intel Xeon Phi
Registros de 512 bits

ASSEMBLY ASSEMBLER
El lenguaje es llamado "Assembly Language" y la herramienta para
convertirlo en cdigo mquina es "Assembler".

Lenguaje:
Lenguaje Ensamblador:

Lenguaje Mquina:

Assembly Language est basada en los


mnemnicos que simbolizan los pasos
de procesamiento, los registros del
procesador, las posiciones de memoria y
otras caractersticas del lenguaje.

El cdigo fuente es convertido en:


Machine Code (bytecode) : Lenguaje
en que trabaja la computadora,
comandos y datos almacenados en
sistema binario/hexa.

ASSEMBLER

*un mnemnico es una palabra que sustituye a un cdigo de operacin

Tipos de lenguajes ensambladores.


de acuerdo a sus caractersticas:

Intel y AMD

-Ensambladores cruzados

x86 Assembly Language

-Ensamblador de una fase

MASM: Macro Assembler (Microsoft)

-Ensamblador de dos fases

FASM: Flat Assembler (Tomasz Grysztar)

-Ensambladores residentes

NASM: Netwide Assembler (Simon Tatham)

-Macroensambladores

TASM: Turbo Assembler (Borland)

-Microensambladores

[otros...]
x64 Assembly Language

FASM: FLAT ASSEMBLER


-es un ensamblador libre, multi-paso, con el estilo de la sintaxis de Intel
que soporta las arquitecturas IA-32 y x86-64.
- velocidad
-optimizaciones de tamao
-portabilidad
- capacidades de macro
-comunidad del foro en lnea
-LTIMA VERSIN DE FASM:
flat assembler 1.71.39
size: 1006 kilobytes
last update: 26 Jul 2015 12:44:37 UTC

ENLACES:

pgina de Fasm:
-http://flatassembler.net/
Descarga de la ltima version:
-http://flatassembler.net/download.php
Google Drive, archivos y presentaciones
-https://drive.google.
com/drive/folders/0B5P7v4e0K9LlN1duRWNw
dmlwMzg

Instalacin:

Descargar la ltima
versin y descomprimir
copiar a la raz del
disco C la carpeta:
fasmw17139

c:\fasmw17139\FASMW.EXE

IDE:

EJEMPLO UTILIZANDO UNA VENTANA

pa01_message_box.asm
El programa invoca una funcin de Windows:
Invoke MessageBox, ...
La funcin MessageBox recibe parmetros:
NULL handle
mensaje mensaje
titulo texto
MB_OK estilo

WIN32.HLP
Microsoft Win32 Programmer's Reference
La programacin en Windows con FASM requiere utilizar funciones grficas
del sistema operativo
mediante una API denominada:
C:\fasmw17139\INCLUDE\win32ax.inc
Toda la documentacin para esto est en el archivo:
...\win32.hlp
Desde Windows 7 para arriba hay que instalar:
Windows6.1-KB917607-x86.msu (32 bits)
Windows6.1-KB917607-x64.msu (64 bits)

SITIOS WEB RECOMENDADOS


FASM Official Message Board
http://board.flatassembler.net/
foro oficial de Flat Assembler
Stack Overflow
http://stackoverflow.com/
buscar con tags: asm, fasm, assembler , etc.
Abre los Ojos al Ensamblador
http://www.abreojosensamblador.net/

tutoriales en espaol:
-programacin en windows
-cdigo
-proyectos sencillos y
avanzados

Escribiendo cdigo:

PROYECTOS:

fecha de entrega: noviembre 9


lugar: labo1 17:15
-AHORCADO
-insertar palabra para comenzar,
empezar a jugar insertando letras
y dibujandose al no acertar.

-...

______

Вам также может понравиться