Buscar

Implementando rotinas assembly em pascal

Código

{ O Delphi permite a implementação de rotinas assembly mescladas ao código Pascal. Não entrarei em detalhes minuciosos, mas darei alguns exemplos básicos de como implementar rotinas simples que retornam números inteiros.} { Soma dois inteiros de 8 bits }

function Soma8(X, Y: byte): byte;

asm

  mov al, &X

  add al, &Y

end;  

{ Soma dois inteiros de 16 bits }

function Soma16(X, Y: Word): Word;

asm

  mov ax, &X

  add ax, &Y

end;  

{ Soma dois inteiros de 32 bits }

function Soma32(X, Y: DWord): DWord;

asm

  mov eax, &X

  add eax, &Y

end;  

{ A chamada a estas funções são feitas da mesma forma que chamamos uma função Pascal. Exemplo: }

var

  A: byte;

begin

  A := Soma8(30, 25); { A = 55 }

end;

Publicidade

Vote na dica




Quantidade de votos: 0 votos
Aceitação: 0%


Detalhes da dica

Categoria: Object pascal
Adicionada dia: 20/06/03
Por: Felipe Monteiro
Visualizada: 3574 vezes

Planeta Delphi - Tudo sobre programação Delphi Planeta Delphi - www.planetadelphi.com.br - Todos os direitos reservados | Copyright 2001-2009