Difference between revisions of "Absolute/fi"
From Lazarus wiki
Jump to navigationJump to search (Created page with "{{Absolute}} Absolute modifoija aiheuttaa muuttujan tallentamisen samaan muistialueeseen kuin toinen muuttuja. <source> // Esimerkki little endian x64 prosessori Uses SysUt...") |
|||
Line 1: | Line 1: | ||
{{Absolute}} | {{Absolute}} | ||
− | Absolute modifoija aiheuttaa muuttujan tallentamisen samaan muistialueeseen kuin toinen muuttuja. | + | <syntaxhighlight lang="pascal" enclose="none"> Absolute</syntaxhighlight> [[modifier/fi|modifoija]] aiheuttaa [[Variable/fi|muuttujan]] tallentamisen samaan muistialueeseen kuin toinen muuttuja. |
− | + | <syntaxhighlight lang="pascal"> | |
− | < | ||
// Esimerkki little endian x64 prosessori | // Esimerkki little endian x64 prosessori | ||
Uses SysUtils; | Uses SysUtils; | ||
Line 34: | Line 33: | ||
WriteLn('firstByte: ' + IntToStr(firstByte)); // Tulostuu: firstByte: 77 | WriteLn('firstByte: ' + IntToStr(firstByte)); // Tulostuu: firstByte: 77 | ||
end. | end. | ||
− | </ | + | </syntaxhighlight> |
Revision as of 16:41, 28 June 2019
│
Deutsch (de) │
English (en) │
español (es) │
suomi (fi) │
français (fr) │
русский (ru) │
Absolute
modifoija aiheuttaa muuttujan tallentamisen samaan muistialueeseen kuin toinen muuttuja.
// Esimerkki little endian x64 prosessori
Uses SysUtils;
Var
anInt : Integer;
anotherInt : Integer absolute anInt;
firstByte : Byte absolute anInt;
begin
// Kun molemmat integer-muuttujat ovat samassa muistipaikassa niin muutos heijastuu
// myös toisessakin
anInt := 20;
WriteLn(IntToStr(anInt) + ' ' + IntToStr(anotherInt)); // Tulostuu: 20 20
// Lukuarvo 20 sopii tavun kokoiseen muistipaikkaan
WriteLn('firstByte: ' + IntToStr(firstByte)); // Tulostuu: firstByte: 20
anotherInt := 333;
WriteLn(IntToStr(anInt) + ' ' + IntToStr(anotherInt)); // Tulostuu: 333 333
// Luku 333 on liian iso sopiakseen tavun kokoiseen muistipaikkaan
// little-endian x64 - vähiten merkitsevä tavu on ensimmäisenä muistissa:
// 333 = 101001101 = 01001101 00000001 muistissa = $4D $01 = desimaalisena: 77 1
WriteLn('firstByte: ' + IntToStr(firstByte)); // Tulostuu: firstByte: 77
end.