Директива DB сборки и целочисленное значение - PullRequest
0 голосов
/ 30 октября 2018

Я пытаюсь написать простое приветственное слово в Assembly. Раздел данных содержит:

section .data
message: db 'hello, world!', 10

Однако у меня есть 2 сомнения по этому поводу:

1) Сохраняется ли целое число 10 с использованием 2 байтов? Кроме того, сохраняется ли целое число 10 с использованием представления ASCII?

2) Представляет ли это 10 "\ n", которое мы находим в языке C?

1 Ответ

0 голосов
/ 30 октября 2018
  1. Это один байт.
  2. Да, это то же самое, что и c-style \n.

Кроме того, вы можете использовать обратные кавычки для использования строк в стиле c в NASM:

message: db 'hello, world!', 10
message: db 'hello, world!', 0x0A
message: db `hello, world!\n`

Это все одно и то же. См. БД и Друзья и Строки символов .

Обратите внимание, что в последней версии используются обратные кавычки вместо одинарных кавычек. Внутри одинарных кавычек db '\n' совпадает с db 92, 110 (коды ASCII для обратной косой черты и строчных букв.) http://asciitable.com/

...