Сделай Сам Свою Работу на 5

Команда MODE: поддержка кодовых страниц.





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

Синтаксис:

MODE устройство CODEPAGE PREPARE=(( cp[,cp]…) file)

или

MODE устройство CODEPAGE SELECT=cp

или

MODE устройство CODEPAGE [/STATUS]

или

MODE устройство CODEPAGE REFRECH

Комментарии. Периферийное оборудование ПЭВМ и сама DOS обеспечивают возможность работы с различными национальными алфавитами. Необходимость рассмотрения вопросов, связанных с настройкой DOS для использования в той или иной стране, диктуется регистрацией кодовой страницы для СССР (потом – СНГ, а теперь – России, Украины и т.д.) и потребностью некоторых пользователей в подготовке текстов на языках, отличных от английского и русского.

Кодовая страница содержит таблицу, являющуюся расширением ASCII. Она ставит в соответствие символам на УВВ определенные двоичные коды. Так, если код n представляет в таблице символ S, то это соответствие должно быть установлено как для устройств ввода (преобразование S в n), так и для устройств вывода (преобразование n в S).

Каждая кодовая страница служит для работы с одним или несколькими национальными алфавитами.



Различают два типа кодовых страниц: аппаратные и составленные. Аппаратной называется кодовая страница, встроенная в устройство. Устройство может иметь одну или несколько таких страниц. Составленная кодовая страница находится в файле, может загружаться в память и определять функционирование ПУ ( правила перекодировки в нем). Работу с такими страницами поддерживают не все устройства УВВ.

DOS содержит следующие файлы с составленными кодовыми страницами для конкретных ПУ:

4201.CPI - для модели 4201 принтера IBM Proprinter и совместимых с ним;

5202.CPI - для модели 5202 принтера IBM Quetwriter III и совместимых с ним;

EGA.CPI - для дисплейного адаптера EGA и совместимых с ним;

LCD.CPI - для жидкокристаллического дисплея ПЭВМ IBM PC Convertible.

В DOS поддерживаются следующие составленные кодовые страницы:

437 - для США (принимается по умолчанию для всех команд, требующих задания кодовой страницы). Именно ее таблица приведена в качестве расширения ASCII.

850 - многоязыковая кодовая страница, включающая наиболее часто встречающиеся буквы многих европейских, северо- и южноамериканских языков;



860 - для Португалии;

863 - для Канады (французский язык);

865 - для Норвегии и Дании;

866 - для России.

Для той или иной страны специфическими являются не только алфавит языка, но и формат даты, формат времени, формат денежной единицы, разделители в числах, а также алфавитный порядок букв. Перечисленные характеристики устанавливаются в DOS с использованием кода страны, применяемого в международной телефонной системе.

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

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

Страна или язык Код страны Формат даты Формат времени Номера кодовых страниц Код клавиатуры

Английский (международный), Австралия 061 01-15-2004 5:35:00.00р 437, 850 -

Арабский 785 15/01/2004 5:35:00,00р 437 -

Бельгия 032 15/01/2004 17:35:00,00 437,

850 ВЕ

Великобритания 044 15-01-2004 5:35:00,00р 437,

850 UK

Германия 049 15.01.2004 17.35.00,00 437,

850 GR

Дания 045 15-01-2004 17.35.00,00 865,

850 DK

Израиль 972 15 01 2004 17:35:00,00 437 -

Испания 034 15/01/2004 17:35:00,00 437,

850 SP

Италия 039 15/01/2004 17:35:00,00 437,

850 IT

Канада (французский) 002 15-01-2004 17:35:00,00 863,

850 CF

Латинская америка 003 15/01/2004 17:35:00,00 437,

850 LA

 

и т.д.

Соответствующими командами DOS не обязательно определять названную триаду полностью.

Для максимально полной настройки оборудования ПЭВМ и DOS на использование в зарегистрированной стране, кроме США, требуется:



1) установить код страны командой конфигурирования системы COUNTRY =;

2) задать активные аппаратные кодовые страницы устройств и выделить буфера для составленных кодовых страниц командами конфигурирования системы DEVICE=;

3) загрузить в память командой NLSFUNC резидентные программные средства национальной поддержки;

4) подготовить (загрузить в память) составленные кодовые страницы для каждого устройства, допускающего переключение кодовых страниц, командой MODE с ключевым словом PREPARE;

5) настроить клавиатуру для поддержки национального алфавита командой KEYB;

6) выбрать из подготовленных кодовых страниц активную командой CHCP (сразу для всех устройств) или командами MODE с ключевым словом SELECT (для каждого устройства в отдельности).

При желании можно ограничиться только пунктом 1 для задания приемлемого формата даты и времени. Пункты 5 и 6 можно поменять местами. Имеется возможность подготовки сразу нескольких кодовых страниц с тем, чтобы затем оперативно осуществлять переключение активности между ними, повторяя пункт 6. Команды COUNTRY= и DEVICE= допустимы только в файле CONFIG.SYS. Остальные в принципе можно ввести с клавиатуры, но обычно их размещают в файле AUTOEXEC.BAT или в другом командном файле.

Незаданные командами DOS элементы триады устанавливаются следующим образом: код страны – 001, код клавиатуры – US, а кодовые страницы – в соответствии с переключателями в устройствах (для дисплея обычно 437).

Часто (например, при отключении питания на устройстве) возникает потребность в восстановлении активной кодовой страницы, что можно осуществить командой MODE с ключевым словом REFRECH.

В команде используются следующие аргументы:

Устройство - имя одного из устройств CON, LPT1 (PRN), LPT2 или LPT3;

cp - номер кодовой страницы;

file - спецификация CPI-файла соответствующего заданному устройству.

Команда в первой форме (PREPARE) обеспечивает подготовку одной или нескольких составленных кодовых страниц для указанного устройства.

Команда во второй форме (SELECT) служит для выбора из подготовленных кодовых страниц единственной, которая становится активной для заданного устройства.

Третья форма команды (/STATUS) обеспечивает выдачу на экран номера активной кодовой страницы для специфицированного устройства. Необязательный переключатель /STATUS при этом абсолютно никакой роли не играет.

И наконец, четвертая форма команды (REFRECH) служит для восстановления (при необходимости) активной кодовой страницы указанного устройства.

Замечания:

■ не следует возлагать слишком большие надежды на средства DOS для национальной поддержки, так как в любом случае сообщения будут выдаваться на английском языке (если DOS не локализована) и использование национального алфавита на уровне DOS (в частности, для именования файлов) не станет возможным;

■ в СНГ для поддержки русского алфавита пока, как правило, используются специально разработанные внешние драйверы, однако уже начали поставляться версии DOS с кодовой страницей для СНГ;

■ видеосистема CGA не предоставляет возможности переключения кодовых страниц (однако кое-что можно сделать командой GRAFTABL).

Примеры:

1) MODE PRN CODEPAGE PREPARE=((863)C:\DOS33\4201.CPI) – подготовить кодовую страницу 863 для принтера IBM Proprinter;

2) MODE CON CODEPAGE PREPARE=((863,850)C:\DOS33\EGA.CPI) - подготовить кодовую страницу 863 и 850 для адаптера EGA;

3) MODE CON CODEPAGE SELECT=863 – активизировать для дисплея кодовую страницу 863.

Можно использовать следующие сокращения:

CP - вместо CODEPAGE

/STA - вместо /STATUS

PREP - вместо PREPARE

SEL - вместо SELECT

REF - вместо REFRECH

 

Команда NLSFUNC

Назначение: загрузка резидентных средств национальной поддержки.

Тип: внешняя.

Синтаксис: NLSFUNC [file]

Комментарии. Аргумент file указывает файл, содержимым которого следует воспользоваться для учета национальных соглашений. Если он не задан, то отыскивается файл, указанный в команде конфигурирования COUNTRY=. В DOS такую информацию содержит файл COUNTRY.SYS. Поэтому, как правило, специфицируют именно его, однако в принципе возможно использовать и любой другой файл, предназначенный для этой же цели. Если аргумент file не задан COUNTRY= в файле COUNTRY.SYS отсутствует, то национальная специфика использоваться не будет.

Замечания:

■ команда NLSFUNC дополняет команду COUNTRY= и является обязательной, если будут использоваться команды MODE и CHCP для подготовки и выбора кодовых страниц;

■ выполнение команды приводит к увеличению резидентной части DOS.

 

Пример: NLSFUNC C:\DOS33\COUNTRY.SYS

 

Команда CHCP

Назначение: отображение номера и выбор (смена) активной кодовой страницы для максимально возможного числа устройств (иными словами – для КП DOS).

Тип: внутренняя.

Синтаксис: CHCP [cp]

Комментарии. Аргумент ср задает номер кодовой страницы, которую предписывается сделать активной. Если указанная кодовая страница не подготовлена командой MODE ни для одного из устройств, то на экране появится сообщение об ошибке, например:

Code page 850 not prepared for system

(Кодовая страница 850 для системы не подготовлена)

Active code page: 437

(Активная кодовая страница: 437)

Prepared system code pages: 437 865

(Подготовленные системные кодовые страницы: 437, 865)

В случае, когда активизируемая кодовая страница не подготовлена для какого-либо устройства (а для других – подготовлена), на экран дисплея выдается сообщение, аналогичное следующему:

Code page 850 not prepared for device CON

(Кодовая страница 850 не подготовлена для устройства CON)

 

Для других же устройств заданная кодовая страница будет активизирована.

Команда CHCP без аргумента служит для получения информации о подготовленных и активной кодовых страницах для КП DOS (эти сведения не обязательно совпадают с выводом команды вида MODE устройство). В этом случае CHCP выдает сообщение типа:

Active code page: 850

(Активная кодовая страница:850)

Prepared system code pages: 850, 437

(Подготовленные системные кодовые страницы:850,437)

Замечания:

■ перед использованием CHCP должна быть выполнена команда NLSFUNC;

■ любая программа, запущенная после активизации новой кодовой страницы, будет использовать именно ее. Однако все программы, запущенные до этого, будут работать со старой кодовой страницей;

Пример:

CHCP 863 - активизировать кодовую страницу 863 (для Канады, французский язык).

 

Команда KEYB

Назначение: настройка клавиатуры на национальный алфавит и отображение двухбуквенного кода клавиатуры.

Тип: внешняя.

Синтаксис: KEYB [код [,[cp] [,file]]]

Комментарии. Выполнение этой команды приводит к:

■ загрузке в ОЗУ специального драйвера клавиатуры (по спецификации file);

■ переключению клавиатуры на национальный регистр в соответствии с заданным кодом;

■ установке раскладки клавиатуры (размещения клавиш), принятой в заданной кодом стране;

■ активизации одной из кодовых страниц, допустимых для данной страны (аргумент ср), с тем, чтобы определять кодировку клавиш.

Если номер ср не задан, то активной для клавиатуры становится кодовая страница, принимаемая для каждой страны по умолчанию. В случае отсутствия аргумента file загружается и подключается к системе драйвер клавиатуры из файла KEYBOARD.SYS, содержащегося в корневом каталоге системного диска (конечно, именно этот файл используется в большинстве стандартных случаев). Если он находится в другом каталоге, то аргумент file следует указать.

При отсутствии всех аргументов команда выдает на экран действующий код клавиатуры и номер активизированной кодовой страницы, например:

Current keyboard code: FR code page: 437

(Текущий код клавиатуры: FR, кодовая страница: 437)

Current CON code page: 437

(Текущая кодовая страница для CON: 437)

Возврат к американскому регистру и принятой в США раскладке клавиатуры после выдачи команды KEYB всегда возможен и осуществляется путем нажатия комбинации клавиш Ctrl-Alt-F1. Для восстановления национального регистра клавиатуры следует нажать комбинацию клавиш Ctrl-Alt-F2.

Команда KEYB вырабатывает следующие коды возврата:

0 - успешное завершение;

1 – ошибочный синтаксис;

2 – файл с драйвером клавиатуры ошибочен или отсутствует;

3 – невозможно создать таблицу клавиатуры в резидентной памяти;

4 – ошибка на устройстве CON;

5 - запрашиваемая кодовая страница не подготовлена;

6 - таблица для выбираемой кодовой страницы в резидентной таблице клавиатуры не найдена;

7 - некорректная версия DOS (команда KEYB выдана в среде старой версии DOS).

Замечания:

- команду KEYB целесообразно использовать тогда, когда клавиши клавиатуры ПЭВМ помечены соответствующими символами. Иногда некоторые национальные символы вводятся комбинацией Ctrl-Alt -клавиша или последовательным нажатием двух клавиш;

- команда KEYB может выдаваться многократно без перезагрузки DOS;

- выполнение команды приводит к увеличению резидентной части DOS;

Пример:

KEYB UK,,C:\DOS33\ KEYBOARD.SYS – переключить клавиатуру на английский регистр и установить рас кладку клавиатуры для использования в Великобритании.

 

 

 








Не нашли, что искали? Воспользуйтесь поиском по сайту:



©2015 - 2024 stydopedia.ru Все материалы защищены законодательством РФ.