Vetor em assembly!

1. Vetor em assembly!

Marcos Vinícius da Silva
marvinla

(usa Slackware)

Enviado em 02/11/2005 - 22:00h

Pessoal, estou estudando assembly e fazendo uns testes... então resolvi colocar um programinha q manipula vetores aqui no VOL, mas como não tem assembly na seção scripts, vou colocar aqui mesmo:

;declara as variaveis ja inicializadas
SECTION .DATA

maior db 'Maior',10
lenmaior equ $-maior

menor db 'Menor',10
lenmenor equ $-menor

igual db 'Igualin!!',10
lenigual equ $-igual

;declara as variaveis nao inicializadas
SECTION .bss

vetor resb 4 ;o vetor!
numero: resb 1 ;um numero qualquer

SECTION .TEXT
global _start

;comece!
_start:

mov byte [numero], 7 ;coloca o numero 7 em 'numero'

mov byte [vetor+0], 1 ;preenche
mov byte [vetor+1], 2 ;os elementos
mov byte [vetor+2], 3 ;do
mov byte [vetor+3], 4 ;vetor

mov al, [numero] ;copia o conteudo de numero em al...
cmp byte [vetor+3], al ;... e compara com o elemento ->4<- do vetor
jg ehmaior ;caso for maior...
jl ehmenor ;caso for menor...
je ehigual ;caso for igual...

ehmaior: ;escreve maior na tela
mov ecx, maior
mov edx, lenmaior
call escreve
jmp fim ;sai do programa

ehmenor: ;escreve menor na tela
mov ecx, menor
mov edx, lenmenor
call escreve
jmp fim ;sai do programa

ehigual: ;escreve igualin na tela
mov ecx, igual
mov edx, lenigual
call escreve

fim: ;sai do programa
mov eax, 1
mov ebx, 0
int 0x80


escreve: ;escreve o conteudo em ecx na tela
mov eax, 4
mov ebx, 1
int 0x80
ret

espero que seja útil pra alguem, e se tiverem dicas sobre como melhorar esse código eu agradeço!

Marcos


  


2. Re: Vetor em assembly!

Ismael
ismaelsantana

(usa Nenhuma)

Enviado em 14/11/2005 - 14:12h

Olá Marcos,

tenho que fazer um programa(trabalho de escola) em assembly, onde que encontro matérial fácil(se for possivel)...? A tarefa é simples, soma, diminuir e fazer uns mode e imprimir os valores pares digitados. Agradeço muito qualquer informação!
Ismael Santana


3. Re: Vetor em assembly!

Marcos Vinícius da Silva
marvinla

(usa Slackware)

Enviado em 15/11/2005 - 00:24h

Um material bem completo é o "Art of Assembly",
que você encontra nesse link:

http://webster.cs.ucr.edu/AoA/DOS/index.html

e apesar de ser para DOS, eu considero um dos melhores. Tem muito conceito nele.

Tem também o:
http://linuxassembly.org

que tem bastante coisa.
Tem também alguns grupos no yahoo groups, que tem bastante exemplo.

Espero ter ajudado!

Flws!


4. tem site braisleiro tbm

Anthony Collucci
acollucci

(usa Debian)

Enviado em 20/03/2006 - 11:15h

www.numaboa.com.br






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts