
- •Тула 2005
- •ЛАБОРАТОРНАЯ РАБОТА №1
- •ОПЕРАЦИОННЫЕ ОБОЛОЧКИ ПЕРСОНАЛЬНЫХ КОМПЬЮТЕРОВ
- •1. ЦЕЛЬ И ЗАДАЧИ РАБОТЫ
- •2. ОСНОВНЫЕ ТЕОРЕТИЧЕСКИЕ СВЕДЕНИЯ
- •3. ОБОРУДОВАНИЕ И ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ
- •4. ЗАДАНИЕ НА РАБОТУ
- •5. ПОРЯДОК ВЫПОЛНЕНИЯ РАБОТЫ
- •6. СОДЕРЖАНИЕ И ОФОРМЛЕНИЕ ОТЧЕТА
- •7. КОНТРОЛЬНЫЕ ЗАДАНИЯ
- •8. БИБЛИОГРАФИЧЕСКИЙ СПИСОК
- •1. ЦЕЛЬ И ЗАДАЧИ РАБОТЫ
- •COMMAND /Y /C [диск:путь\]имя_командного_файла [параметры]
- •>C:\BATCH\LX BOOK_1.TXT BOOK_2.TXT BOOK_3.TXT
- •CALL [диск:путь\]имя_командного_файла [параметры]
- •TYPE C:\REPORT.TXT | MORE
- •MORE < C:\REPORT.TXT
- •FOR %%переменная IN (набор) DO команда
- •FOR %%F IN (*.TXT *.LST) DO COPY %%F PRN
- •FOR %%V IN (COPY ERASE) DO %%V *.* C:\BACKUP
- •GOTO [:]метка
- •PAUSE [текст]
- •REM [текст]
- •DIR > FILELIST.TXT
- •process_1 | process_2 | … process_N
- •ECHO Y | process
- •IF EXIST Z:\*.* SET DRIVE=Z: | GOTO FORWARD
- •COPY CON имя_файла
- •ECHO Esc[0;60;"DIR";13p
- •ВЕ команда [аргументы] [переключатели]
- •ВЕ файл ,
- •команда [аргументы] [переключатели]
- •BEEP [/Dn] [/Fm] [/Rp] [/Wq]
- •Таблица 1
- •Таблица частот (в Гц)
- •Нота
- •Октава 2
- •Октава 4
- •Соль
- •DELAY n
- •PRINTCHAR символ n [атрибуты]
- •TASM[.BAT] ONE TWO
- •Start – загрузить в оперативную память драйвер и активизировать электронный диск;
- •Drive Letter – назначить буквенный идентификатор электронному диску (от C: до Z:). Если выбранный идентификатор электронного диска окажется назначенным какому-либо иному устройству памяти, то в процессе активизации драйвера возникнет аварийная ситуация;
- •Start Driver at Boot – активизировать драйвер в процессе загрузки операционной системы;
- •AutoSave – данный элемент управления позволяет определить интервал времени в секундах между процедурами периодического автоматического сохранения образа электронного диска на жесткий магнитный диск. Эта процедура необходима для повышения надежности хранения информации на электронном диске;
- •Disk Label – назначить метку для электронного диска (не более 11 буквенно-цифровых символов);
- •Save Disk Image On Shutdown – определить автоматическое сохранение образа электронного диска на жестком магнитный диске при завершении работы операционной системы. Необходимо отметить, что процедуры сохранения и восстановления содержимого сжатого диска большой емкости (порядка 64 Мбайт и более) требуют значительных затрат времени при старте операционной системы и завершении ее работы;
- •Save Settings – сохранить параметры работы драйвера электронного диска;
- •MASM /la /zi LABRAB, , ,NUL
- •Рис. 2. Схема работы компоновщика с файлами
- •LINK LABRAB,LABRAB;
- •Параметры программы ML имеют следующий смысл:
- •ML /AT LABRAB.ASM /link
- •Система программирования Turbo Assembler является практически полным функциональным аналогом системы программирования Microsoft Assembler. Основными программными компонентами системы программирования Turbo Assembler являются следующие:
- •TASM /zi LABRAB, , ,NUL
- •TLINK /x /t LABRAB
- •2.4. Пример программы на языке Turbo Assembler
- •0005 BA 0000 R mov dx, OFFSET Greet ,
- •Таблица 1
- •Суффиксы машинного кода
- •Суффикс
- •Назначение
- •Будет скорректировано смещение
- •Будут скорректированы смещение и сегмент
- •Будет скорректировано смещение внешнего символа
- •11 0000 B8 0000s mov ax, @DATA
30
функциональную клавишу F2 можно назначить для выполнения команды DIR с помощью Esc-последовательности:
ECHO Esc[0;60;"DIR";13p
Рассмотрим далее пример использования команд драйвера ANSI.SYS в командном файле. С помощью команды CHOICE и драйвера ANSI.SYS можно организовать циклический ввод символов и последующее объединение введенных символов в единую строку. Далее приводится фрагмент командного файла, в котором осуществляется ввод числовой строки. При этом используется пара команд драйвера ANSI.SYS, делающая работу команды CHOICE более удобной для пользователя, но и без этих команд работа командного файла принципиально не изменится. Для завершения ввода пользователь должен ввести символ звездочки (*).
REM Программа ввода с клавиатуры числовой строки REM Используется драйвер ANSY.SYS
REM Запомнить координаты курсора
ECHO Esc[s :LOOP
REM Восстановить координаты курсора
ECHO Esc[u
CHOICE /C:0123456789* /N Введите число или * для завершения ввода: %one% REM Переменная TWO содержит последнюю введенную цифру
IF ERRORLEVEL |
11 GOTO END |
||
IF ERRORLEVEL |
10 SET |
TWO=9 |
|
IF ERRORLEVEL |
10 GOTO CONT |
||
IF ERRORLEVEL |
9 |
SET TWO=8 |
|
IF ERRORLEVEL |
9 |
GOTO |
CONT |
IF ERRORLEVEL |
8 |
SET TWO=7 |
|
IF ERRORLEVEL |
8 |
GOTO |
CONT |
IF ERRORLEVEL |
7 |
SET TWO=6 |
|
IF ERRORLEVEL |
7 |
GOTO |
CONT |
IF ERRORLEVEL |
6 |
SET TWO=5 |
|
IF ERRORLEVEL |
6 |
GOTO |
CONT |
IF ERRORLEVEL |
5 |
SET TWO=4 |
|
IF ERRORLEVEL |
5 |
GOTO |
CONT |
IF ERRORLEVEL |
4 |
SET TWO=3 |
|
IF ERRORLEVEL |
4 |
GOTO |
CONT |
IF ERRORLEVEL |
3 |
SET TWO=2 |
|
IF ERRORLEVEL |
3 |
GOTO |
CONT |
IF ERRORLEVEL |
2 |
SET TWO=1 |
|
IF ERRORLEVEL |
2 |
GOTO |
CONT |
IF ERRORLEVEL |
1 |
SET TWO=0 |
|
:CONT |
двух строк |
||
REM Сцепление |
|||
SET ONE=%ONE%%TWO% |
символа |
||
REM Повторение ввода |
|||
GOTO LOOP |
|
|
|
:END |
|
|
содержится введенное число в виде строки символов |
REM В переменной ONE |
|||
ECHO Введено число – |
%ONE% |