Menu
Coddy logo textTech

ASCII и Hex

Часть раздела Основы путешествия по Assembly на Coddy. Урок 13 из 45.

Компьютеры понимают только числа. Так как же они хранят такие буквы, как 'A', 'b' или '?'?

Ответ — ASCII (американский стандартный код для обмена информацией). ASCII — это таблица, которая назначает каждому символу число.

Как работает ASCII:

СимволНомер ASCII (десятичный)Номер ASCII (шестнадцатеричный)
'A'650x41
'B'660x42
'C'670x43
'a'970x61
'b'980x62
'0'480x30
'1'490x31
' ' (пробел)320x20
'\n' (перевод строки)100x0A
'\0' (нулевой символ)00x00

Важные значения ASCII, которые нужно запомнить для ассемблера:

СимволШестнадцатеричное значениеЗачем это нужно
'A'0x41С этого значения начинаются заглавные буквы
'a'0x61С этого значения начинаются строчные буквы
'0'0x30С этого значения начинаются цифры
Пробел0x20Разделяет слова
Перевод строки (\n)0x0AПереход на следующую строку
Нулевой символ (\0)0x00Маркер конца строки

Обратите внимание на закономерность:

ЗакономерностьПример
Прописные буквы A-Z идут подряд'A'=65, 'B'=66, 'C'=67...
Строчные буквы a-z идут подряд'a'=97, 'b'=98, 'c'=99...
Цифры 0-9 идут подряд'0'=48, '1'=49, '2'=50...
Строчная буква = прописная буква + 32'a' (97) = 'A' (65) + 32

Как строка хранится в памяти:

Слово "Hi" с символом новой строки хранится следующим образом:

СимволШестнадцатеричный форматДвоичный формат
'H'0x4801001000
'i'0x6901101001
'\n'0x0A00001010

В ассемблере это записывается так: db 'Hi', 0x0A

Зачем это нужно для ассемблера:

Когда вы определяете строку в data.asm, вы сохраняете коды ASCII в памяти. Когда вы выводите строку, операционная система считывает эти коды ASCII и отображает соответствующие символы.

Попробуйте сами

В этом уроке нет задания по программированию.

quiz iconПроверьте себя

В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.

Все уроки раздела Основы

Потренируйтесь самостоятельно: Песочница Assembly