quarta-feira, 28 de novembro de 2018

Codificação em assembly

Exemplo de função em assembly

function SubtrairResult(n1: integer; n2:integer) :integer;
begin
asm // Aqui inicia a programação em assembly
mov eax, n1 // valor de n1 em eax
sub eax,n2 //subtrai n1,n2
mov result, eax // resultado enviado 

soma

mov eax, n1
add eax,n2 // sema n1+n2
mov result, eax

multiplicação
mov eax, n1
mul n2
mov result, eax

divisao
mov eax,n1
mov ecx, n2

cdq //converte para quadword

div ecx // divide eax por ecx

edx// e o resto da divisao
mov result, eax // resultado da divisao


condições
cmp 1,0
jg @ maior //se 1 for maior que 0 , va para maior

jl // menor jle <=
jge >=

je = igual 

@ maior:

mov result, true;
jmp @fim

@fim:

end;



end;

Nenhum comentário:

Postar um comentário

author
Jake Simms
Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt utlaoreet dolore.