Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
24
Добавлен:
27.04.2015
Размер:
265.44 Кб
Скачать

4.9.5. Работа с кодами ascii

Символьные данные можно сравнивать между собой, и, следовательно, сортировать. Прежде чем VB сможет при сортировке сравнить один символ с другим, он должен преобразовать каждый из символов в число с помо­щью таблицы перевода, которая называется таблицей символов ASCII(или таблицей символов ANSI). ASCII – это сокращение от American Standard Code for Information Interchange (американский стандартный код для обмена информацией). Каждый из основных сим­волов, которые можно отобразить на компьютере, имеет свой код ASCII. Эти коды включают базовый набор символов «клавиатуры» (коды с 32 по 127) и специальные «управляющие» символы, такие, как табуля­ция, перевод строки и возврат каретки (коды с 0 по 31). Например, буква «а» (латинская) в нижнем регистре соответствует ASCII-коду 97, а бук­ва «А» (тоже латинская) в верхнем регистре соответствует ASCII-коду 65. В результате VB при сортировке или при выполнении других операций считает эти два символа различными.

В 1980-х годах таблица ASCII была расширена кодами с 128 по 255, которые содержали символы национальных языков, греческие символы, симво­лы псевдографики и некоторые другие. Таблицу ASCII с этими дополнительными символами обычно называют расширенной таблицей символов.

Набор символов ASCII не являет­ся единственным. При расширении рынка компьютеров и прикладного программного обеспечения был разработан более сложный стандарт представления символов, который называется Unicode. Unicode может хранить до 65536 символов - вполне достаточно для того, чтобы представить традиционные символы набора ASCII плюс большую часть национальных и международных символов. В MS Windows и VS поддерживаются как наборы символов ASCII, так и Unicode.

Чтобы определить ASCII-код конкретной буквы, можно использовать функцию Asc( ) VB. Например, следующий оператор присваи­вает короткой целочисленной переменной AscCode число 122 (ASCII-код строчной буквы «z»):

Dim AscCode As Short

AscCode = Asc("z")

Точно также с помощью функции Chr()можно преобразовать ASCII-код в букву. Например, следующий программный код присваивает символьной пере­менной букву «z»:

Dim letter As Char

letter = Chr(122)

Такой же результат можно получить, если использовать только что объявленную переменную AscCode следующим образом:

letter = Chr(AscCode)

Как сравнить одну текстовую строку или ASCII-код с другой? Исполь­зовать один из операторов сравнения, предоставляемых VB для работы с текстовыми и числовыми элементами.

Символ больше, чем другой символ, если его ASCII-код больше. Например, ASCII-значение буквы «В» больше, чем ASCII-значение буквы «А», так что выражение"А"<"В"истинно, а выражение "А">"В" ложно.

При сравнении двух строк, которые содержат больше одного симво­ла, VB начинает со сравнения первого символа первой строки с первым символом второй строки, а затем продолжает посимвольное срав­нение этих строк до тех пор, пока не найдет различие. Например, строки Mike и Michael одинаковы до третьего символа («к» и «с»). Так как значе­ние ASCII «k» больше, чем значение «с», выражение "Mike" > "Michael" истинно.

Если между строками не найдено различий, то они равны. Если две строки равны на протяжении нескольких символов, но одна строка про­должается, а вторая заканчивается, то более длинная строка больше, чем более короткая. Например, выражение "ААААА">"ААА" истинно.

Соседние файлы в папке Учебное_пособие-Раздел4-Информатика-270100з