Assembler: Porovnání verzí

Z Delphi & Pascal (česká wiki)
Skočit na navigaci Skočit na vyhledávání
 
 
(Není zobrazeno 6 mezilehlých verzí od stejného uživatele.)
Řádek 14: Řádek 14:
  
 
;Viz také
 
;Viz také
 +
:[[:Kategória:Assembler]]
 +
 
:[[Vstupní a závěrečný kód]]
 
:[[Vstupní a závěrečný kód]]
  
:[[Příkaz asm|asm]]
+
:[[asm]]
  
 
[[Category:assembler]]
 
[[Category:assembler]]

Aktuální verze z 26. 1. 2013, 16:11

Assembler je procedurální direktiva. S direktivou assembler lze psát kompletní funkce a procedury v integrovaném assembleru bez příkazové části begin..end.

Direktiva assembler způsobí, že překladač Turbo Pascalu vykonává tyto optimalizační kroky:

  • Hodnotové parametry: Překladač negeneruje kód, který kopíruje hodnotové parametry do lokálních proměnných.
  • Proměnná výsledku funkce: Překladač nealokuje proměnnou výsledku, odkaz na symbol @Result je chybný.
  • Zásobníkový rámec: Překladač negeneruje zásobníkový rámec pro procedury a funkce bez parametrů a lokálních proměnných.

Optimalizace hodnotových parametrů působí na všechny parametry typu řetězec a další parametry, jejichž délka není 1, 2 nebo 4 bajty.

V takových procedurách a funkcích, tyto parametry musí být zpracovány jako kdyby byly volané odkazem.

Řetězcové funkce jsou vyjímkou v optimalizaci, vždy mají ukazatel @Result na místo, které je alokováno volajícím této funkce.

Viz také
Kategória:Assembler
Vstupní a závěrečný kód
asm