Přidáno 1 396 bajtů,
11. 10. 2012, 22:05 V assembleru musí být řetězcová konstanta uzavřena do apostrofů nebo úvozovek.
Dva po sobě následující apostrofy (resp. úvozovky) v řetězci, uzavřeném do apostrofů (resp. úvozovek), znamenají jeden znak apostrof (resp. úvozovka).
Řetězcové konstanty libovolné délky jsou povoleny v direktivě [[DB]] a způsobí přidělení posloupnosti bajtů, obsahujících ASCII hodnoty znaků v řetězci.
Není-li řetězcová konstanta v direktivě DB, nesmí být delší než čtyři znaky, a určuje číselnou hodnotu, která se může objevit i ve výrazu.
Číselná hodnota řetězcové konstanty je vypočítána jako
Ord(Ch1)
+ Ord(Ch2) shl 8
+ Ord(Ch3) shl 16
+ Ord(Ch4) shl 24
kde
* Ch1 je nejpravější (poslední)
* Ch4 je nejlevější (první) znak
Jestliže je řetězec kratší než čtyři znaky, nejlevější znaky jsou nahrazeny nulou.
Zde je několik příkladů řetězcových konstant a jejich odpovídajících číselných hodnot:
Řetězcová Číselná
Konstanta Hodnota
—————————————— ———————————
'a' 00000061H
'ba' 00006261H
'cba' 00636261H
'dcba' 64636261H
'a ' 00006120H
' a' 20202061H
'a'*2 000000E2H
'a'-'A' 00000020H
NOT 'a' FFFFFF9EH
[[Category:assembler]]