Computação

277 palavras 2 páginas
Roteiro

Assembly x86

Assembly
Assemblers
Sections
Registradores

Hugo Bessa - hrba
Paulo Serra Filho – ptvsf

Registradores de Segmentos
Principais Operações do NASM
Funcões e Macros
Interrupções
Compilando um programa

Assembly
Linguagem de baixo nível

Assembly section .data hello: db 'Hello, world!',10

section .text

Baseada em mnemônicos

_start:

Assembly x86 diferente do MIPS

;declaração de string constante

len: equ $-hello

Traduzida por assemblers

;declaração de constante inteira

global _start

MOV EAX, 4

;

write

MOV EBX, 1

;

file descriptor

MOV ECX, hello ;

string

MOV EDX, len

tamanho

;

INT 80H

;

MOV EAX, 1

;

MOV EBX, 0

;

INT 80H

interrupção

exit retorna 0
;

interrupção

1

Assembly

Assemblers

Linguagem de baixo nível

TurboASM - TASM

Traduzida por assemblers

MicrosoftASM – MASM

Baseada em mnemônicos

NetwideASM - NASM

Assembly x86 diferente do MIPS



Gratuito



Unix

Um assembler não compila o código de outro Sections
.data


.bss

Dados inicializados



Espaço reservado (variáveis)



db ;Declara bytes



resb ;Reserva uma quantidade de bytes



equ ;Resolve uma expressão e inicializa a variável com o resultado



resw ;Reserva uma quantidade de palavras(2bytes)



resq ;Reserva um array de numeros reais




Sections

dw ;Declara uma palavra que armazena um dado


Ex:

Ex: section .bss

section .data message: db 'Hello world!' msglen: equ 12 buffersize: dw 1024

name: resb 255 bigNum: resw 1 realarray: resq 10

2

Sections
.text

Registradores
32 bits

16 bits



Onde o código assembly fica



EAX



AX



Ex:



EBX



BX



ECX



CX



EDX



DX



ESP



SP



EBP



BP



ESI



SI



EDI



DI

section .text global _start
_start:

Relacionados

  • computação o que é
    334 palavras | 2 páginas
  • computaçao
    3419 palavras | 14 páginas
  • Computação
    684 palavras | 3 páginas
  • computaçao
    1577 palavras | 7 páginas
  • Computação
    785 palavras | 4 páginas
  • Computação
    274 palavras | 2 páginas
  • Computação
    375 palavras | 2 páginas
  • Computação
    410 palavras | 2 páginas
  • Computação
    4045 palavras | 17 páginas
  • Computação
    1982 palavras | 8 páginas