Как мы заметили выше, мы можем рассматривать каждый байт информации   не как двоичное число, а как символьное значение.  Каждое из  двоичных чисел от 0 до 255 может представлять определенный символ. Фиг. 2.13 показывает множество символов IBM PC.  Колонки здесь  соответствуют старшим 4 битам символьного кода, а ряды - младшим 4  битам этого кода.  Так, позиция таблицы 41Н соответствует символу "A", а код 5ЕН представляет символ "^".

 

            ЪДДДВДДДТДДДВДДДВДДДВДДДВДДДВДДДВДДДВДДДї   ЪДДДВДДДТДДДВДДДВДДДВДДДВДДДВДДДВДДДВДДДї

            ідесі= >є 0 і16 і32 і48 і64 і80 і96 і112і   ідесі= >є128і144і160і176і192і208і224і240і

            ГДДДЕДДДЧДДДЕДДДЕДДДЕДДДЕДДДЕДДДЕДДДЕДДДґ   ГДДДЕДДДЧДДДЕДДДЕДДДЕДДДЕДДДЕДДДЕДДДЕДДДґ

            і  ішстє 0 і 1 і 2 і 3 і 4 і 5 і 6 і 7 і  і   ішстє 8 і 9 і A і B і C і D і E і F і

            ЖНННШНННОНННШНННШНННШНННШНННШНННШНННШНННµ   ЖНННШНННОНННШНННШНННШНННШНННШНННШНННШНННµ

            і 0 і 0 єпусі > іпрбі 0 і @ і P і ` і p і   і 0 і 0 є А і Р і а і ° і А і Р і р і   і

            ГДДДЕДДДЧДДДЕДДДЕДДДЕДДДЕДДДЕДДДЕДДДЕДДДґ   ГДДДЕДДДЧДДДЕДДДЕДДДЕДДДЕДДДЕДДДЕДДДЕДДДґ

            і 1 і 1 є   і < і ! і 1 і A і Q і a і q і   і 1 і 1 є Б і С і б і ± і Б і С і с і   і

            ГДДДЕДДДЧДДДЕДДДЕДДДЕДДДЕДДДЕДДДЕДДДЕДДДґ   ГДДДЕДДДЧДДДЕДДДЕДДДЕДДДЕДДДЕДДДЕДДДЕДДДґ

            і 2 і 2 є   і     і " і 2 і B і R і b і r і   і 2 і 2 є В і Т і в і І і В і Т і т і   і

            ГДДДЕДДДЧДДДЕДДДЕДДДЕДДДЕДДДЕДДДЕДДДЕДДДґ   ГДДДЕДДДЧДДДЕДДДЕДДДЕДДДЕДДДЕДДДЕДДДЕДДДґ

            і 3 і 3 є   і ! і # і 3 і C і S і c і s і  і 3 і 3 є Г і У і г і і і Г і У і у і  і

            ГДДДЕДДДЧДДДЕДДДЕДДДЕДДДЕДДДЕДДДЕДДДЕДДДґ   ГДДДЕДДДЧДДДЕДДДЕДДДЕДДДЕДДДЕДДДЕДДДЕДДДґ

            і 4 і 4 є   і     і $ і 4 і D і T і d і t і   і 4 і 4 є Д і Ф і д і ґ і Д і Ф і ф і   і

            ГДДДЕДДДЧДДДЕДДДЕДДДЕДДДЕДДДЕДДДЕДДДЕДДДґ   ГДДДЕДДДЧДДДЕДДДЕДДДЕДДДЕДДДЕДДДЕДДДЕДДДґ

            і 5 і 5 є   і     і % і 5 і E і U і e і u і   і 5 і 5 є Е і Х і е і µ і Е і Х і х і   і

            ГДДДЕДДДЧДДДЕДДДЕДДДЕДДДЕДДДЕДДДЕДДДЕДДДґ   ГДДДЕДДДЧДДДЕДДДЕДДДЕДДДЕДДДЕДДДЕДДДЕДДДґ

            і 6 і 6 є   і     і & і 6 і F і V і f і v і   і 6 і 6 є Ж і Ц і ж і ¶ і Ж і Ц і ц і   і

            ГДДДЕДДДЧДДДЕДДДЕДДДЕДДДЕДДДЕДДДЕДДДЕДДДґ   ГДДДЕДДДЧДДДЕДДДЕДДДЕДДДЕДДДЕДДДЕДДДЕДДДґ

            і 7 і 7 є   і     і ' і 7 і G і W і g і w і   і 7 і 7 є З і Ч і з і · і З і Ч і ч і   і

            ГДДДЕДДДЧДДДЕДДДЕДДДЕДДДЕДДДЕДДДЕДДДЕДДДґ   ГДДДЕДДДЧДДДЕДДДЕДДДЕДДДЕДДДЕДДДЕДДДЕДДДґ

            і 8 і 8 є   і     і ( і 8 і H і X і h і x і   і 8 і 8 є И і Ш і и і ё і И і Ш і ш і   і

            ГДДДЕДДДЧДДДЕДДДЕДДДЕДДДЕДДДЕДДДЕДДДЕДДДґ   ГДДДЕДДДЧДДДЕДДДЕДДДЕДДДЕДДДЕДДДЕДДДЕДДДґ

            і 9 і 9 є   і     і ) і 9 і I і Y і i і y і   і 9 і 9 є Й і Щ і й і № і Й і Щ і щ і   і

            ГДДДЕДДДЧДДДЕДДДЕДДДЕДДДЕДДДЕДДДЕДДДЕДДДґ   ГДДДЕДДДЧДДДЕДДДЕДДДЕДДДЕДДДЕДДДЕДДДЕДДДґ

            і10 і A є   і     і * і : і J і Z і j і z і   і10 і A є К і Ъ і к і є і К і Ъ і ъ і   і

            ГДДДЕДДДЧДДДЕДДДЕДДДЕДДДЕДДДЕДДДЕДДДЕДДДґ   ГДДДЕДДДЧДДДЕДДДЕДДДЕДДДЕДДДЕДДДЕДДДЕДДДґ

            і11 і B є   і     і + і ; і K і [ і k і { і   і11 і B є Л і Ы і л і » і Л і Ы і ы і   і

            ГДДДЕДДДЧДДДЕДДДЕДДДЕДДДЕДДДЕДДДЕДДДЕДДДґ   ГДДДЕДДДЧДДДЕДДДЕДДДЕДДДЕДДДЕДДДЕДДДЕДДДґ

            і12 і C є   і     і , і < і L і і l і | і   і12 і C є М і Ь і м і ј і М і Ь і ь і   і

            ГДДДЕДДДЧДДДЕДДДЕДДДЕДДДЕДДДЕДДДЕДДДЕДДДґ   ГДДДЕДДДЧДДДЕДДДЕДДДЕДДДЕДДДЕДДДЕДДДЕДДДґ

            і13 і D є   і     і - і = і M і ] і m і } і   і13 і D є Н і Э і н і Ѕ і Н і Э і э і   і

            ГДДДЕДДДЧДДДЕДДДЕДДДЕДДДЕДДДЕДДДЕДДДЕДДДґ   ГДДДЕДДДЧДДДЕДДДЕДДДЕДДДЕДДДЕДДДЕДДДЕДДДґ

            і14 і E є   і     і . і > і N і ^ і n і ~ і   і14 і E є О і Ю і о і ѕ і О і Ю і ю і   і

            ГДДДЕДДДЧДДДЕДДДЕДДДЕДДДЕДДДЕДДДЕДДДЕДДДґ   ГДДДЕДДДЧДДДЕДДДЕДДДЕДДДЕДДДЕДДДЕДДДЕДДДґ

            і15 і F є   і     і / і ? і O і _ і o і  і   і15 і F є П і Я і п і ї і П і Я і я і   і

            АДДДБДДДРДДДБДДДБДДДБДДДБДДДБДДДБДДДБДДДЩ   АДДДБДДДРДДДБДДДБДДДБДДДБДДДБДДДБДДДБДДДЩ

            Фиг. 2.13 Набор символов IBM

Набор символов IBM PC является расширением набора символов ASCII (Американский стандартный код для обмена информацией).  В наборе ASCII значения символов от 20Н до 7ЕН представляют обычные символы латинского алфавита, числовые символы и знаки препинания.  Коды от 0Н до 1FH обычно служат управляющими символами.  На Фиг.  2.14 показаны управляющие символы ASCII из этого диапазона.  Эти  символы имеют значение при передаче на принтеры IBM или другие ASCII-принтеры.  Однако на Фиг.  2.13 видно, что эти управляющие символы могут также появляться на экране в виде графических символов. В IBM PC управляющая часть таблицы ASCII используется для графических изображений, с целью более полно реализовать возможности видеоадапторов.  Поскольку видеоадапторы могут изобразить любой из 256 кодов, то нет оснований строго регламентировать  применение какого-либо из кодов.  Разработчики рассматривали все 32 символа из управляющей части таблицы как предназначенные главным  образом для графического изображения и обычно не печатаемые принтером. Короче говоря, первые 32 значения являются управляющими  кодами при передаче их на принтер, но изображаются как графические  символы при выводе их на дисплей.

Символьные значения от 80Н до 0FFH являются расширением набора  символов ASCII для IBM PC. Эти символы подобраны разработчиками IBM так, чтобы расширить изобразительные возможности компьютера. Наборы иностранных, графических и научных символов позволяют использовать IBM PC в самых разнообразных приложениях.

       Код  Символ           Значение

      ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД

        0  NUL   Пусто

        7  BEL   Сигнал

        9  HT    Горизонтальная табуляция

       0A  LF    Пропуск строки

       0B  VT    Вертикальная табуляция

       0C  FF    Прогон страницы

       0D  CR    Возврат каретки

       0E  SO    Шаг назад

       0F  SI    Шаг вперед

       11  DC1   Управление 1

       12  DC2   Управление 2

       13  DC3   Управление 3

       14  DC4   Управление 4

       18  CAN   Стоп

       1B  ESC   Выход

      ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД  Фиг. 2.14 Управляющие коды IBM

В некоторых случаях вы захотите вводить символьные коды в память для их дальнейшего использования программой.  Примером может  служить сообщение, которое в определенный момент выполнения программы должно быть выдано оператору.  Вместо потока кодов символов в  таблице, мы можем сразу ввести строку символов в текст программы. Ассемблер позволяет это сделать с помощью оператора DB.  В поле

 

          Microsoft (R) Macro Assembler Version 5.00              10/31/88 22:30:38

         Фиг. 2.15 Определение байтов для текста ASCII           Page  1-1

 

              1                              PAGE   ,132

              2                              TITLE  Фиг. 2.15 Определение байтов для текста ASCII

              3

              4 0000  9D E2 AE 20 E1 AE AE         DB          'Это сообщение',10,13

              5     A1 E9 A5 AD A8 A5 0A

              6     0D

              7

              8                              END

              Фиг. 2.15 Определение байтов для текста ASCII

операндов мы вместо ввода чисел (кодов) помещаем заключенную в кавычки строку символов.  Ассемблер подберет соответствующие значения кодов и поместит их в память - каждый символ в отдельный байт. Так ассемблер может работать только с символами в диапазоне от 20Н до 0FFH.  в диапазоне от 0Н до 1FH символы должны вводиться  в программу в виде чисел, а не ограниченной кавычками строки.  Это  связано с тем, что в тексте исходного файла некоторые управляющие  символы используются для обозначения начала и конца строки.

Пример на Фиг.    2.15 показывает создание 15 байт данных в  программе.    Первые 13 байтов соответствуют 13-ти символам текстовой строки заключенной в кавычки.  Первый байт имеет значение 9DH,  второй 0E2H и т.д.  Последние два байта в 17-ти байтном сообщении - это коды возврата каретки и прогона строки.  Если мы отправим это 17-байтное сообщение на принтер, он напечатает заключенный в кавычки текст. Управляющие символы предписывают принтеру перейти после этого на следующую строку документа.