Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекция 01-Системы счисления и типы данных.doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
216.06 Кб
Скачать

8.Кодирование символов

Для кодирования символов с помощью одного байта используется ASCII-таблица (American Standard Code for Information Interchange-табл.5).

Таблица 5

ASCII – таблица символов

Основная таблица ASCII

Расширенная таблица ASCII

В ASCII-таблице содержатся различные символы и соответствующие им коды. Например, символу ‘0’ соответствует код 0x30 = 48. Символы и строки хранятся в памяти в виде соответствующих кодов из ASCII-таблицы. Например, строка "123" в памяти будет храниться в виде последовательности байт 0х31 0х32 0х33 0х00. Иногда строки, у которых 0 является признаком конца, называют asciiz-строками.

Символу ‘b’ соответствует ASCII-код 0x62. В десятичной системе это будет 98, а в двоичной – 01100010. Таблицы символов для разных шрифтов можно найти с помощью программы Пуск – Стандартные – Системные утилиты – Таблица Символов.

В русской кодировочной странице 866 буква Ё имеет код 0xF0, а буква ё – код 0хF1.

В языке Си символьные константы обозначаются ‘\xxx’, где ххх – код этого символа, записанный в восьмеричной СС. Иначе говоря, ‘\xxx’ – это код символа, у которого код равен ххх. Например, ‘b’ = ‘\142’.

Примеры

1. Количество букв в английском алфавите равно ‘Z’ – ‘A’ + 1.

2. Количество букв в русском алфавите равно ‘Я’ – ‘А’ + 2.

9.Контрольные вопросы.

    1. Почему системы счисления с основаниями 2, 8 и 16 являются родственными?

    2. Можно ли по содержимому двухбайтового числа сказать, является ли оно отрицательным?

    3. Почему компилятор не проверяет выход результата целочисленной операции за диапазон типа?

    4. Преобразовать в 10-ичную СС

  • 10000110002

  • 11118

  • 100023

    1. Преобразовать к десятично-буквенной записи

0xFА120, 0x352FFAA, 0x120112100

    1. Определить размер области памяти с границами 13FA:12F0 и DAAD:DAAD

    2. Вычислить в побитовом виде

  • 30 + 70 в одном байте

  • -10 + 80 в одном байте

  • 200 -100 в двух байтах

    1. Преобразовать логический адрес A00A:30FF к нормализованной форме

    2. Преобразовать в другую СС

  • 0хFFF0AA в 8-ичную СС

  • 2007 в 2-ичную СС

  • 2048 в 16-ичную СС

    1. Показать ошибочность операций

  • 20 + 120 в одном байте со знаком

  • - 100 - 110 в одном байте со знаком

  • 0x9AAA + 0xAAAA в двух байтах без знака

 Подробнее: на сайте "Всевозможные нумерации и системы счисления. Адрес сайта: http://www.megalink.ru/~agb/n/numerat.htm.

15