Разработка программы испытаний компьютерной техники
Рефераты >> Программирование и компьютеры >> Разработка программы испытаний компьютерной техники

РУЭ (расширенное управление электропитанием) – стандарт, служащий для экономии электроэнергии. Представляет собой следующий набор функций:

- автоматическое отключение электропитания;

- «спящий» режим;

- автоматическое отключение питания монитора;

- автоматическое отключение питания жестких дисков.

Может находиться в двух состояниях: включено или выключено.

Вторая часть программы – диагностика памяти – проверяет на работоспособность память ПК, на котором выполняется программа.

2.2 Требования к функциональным характеристикам

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

1 – сбор сведений о системе;

2 – тест памяти;

3 – выход.

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

В случае выбора пункта «Сбор сведений о системе» выполняется последовательный вывод информации о ПК в виде списка устройств с текущим состоянием. Ниже приведена таблица со списком устройств и их возможными состояниями.

Таблица 2.1 Возможные состояния устройств

Устройство

Возможные состояния

Максимальное количество подключаемых СОМ-портов

От 0 до 4

Количество CОМ-портов

От 0 до 4

Количество LPT-портов

От 0 до 4

Первый дисковод

Отсутствует, 360KB, 720KB, 1.2MB, 1.44MB.

Второй дисковод

Отсутствует, 360KB, 720KB, 1.2MB, 1.44MB.

Количество установленных CD-ROM приводов

От 0 до 4

Расширенное управление электропитанием(APM)

Отсутствует, присутствует, включено/выключено

Манипулятор «мышь»

Отсутствует, присутствует

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

В случае выбора пункта «тест памяти» программа должна выполнять тестирование не менее 640КБ. памяти. В случае если память исправна, на экран выводиться сообщение «тест пройден», в противном случае «тест не пройден». Также необходимо реализовать задержку и возврат в меню.

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

2.3 Обоснование выбора языка программирования

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

Язык ассемблера, представляет собой фактически символьную форму записи машинного языка: в нем вместо цифровых кодов операций вписывают привычные знаки операций или их словесные названия, вместо адресов – имена, а константы записывают в десятичное системе счисления. Программу, записанную в таком виде, вводят в ЭВМ и подают на вход специальному транслятору, называемому ассемблером, который переводит её на машинный язык, и далее полученную машинную программу выполняют.

Для любой ЭВМ можно придумать разные языки ассемблера, хотя бы потому, что можно по-разному обозначать машинные операции. В частности, и для ПК разработано несколько таких языков(ASM-86, MASM, TASM). Для реализации данной задачи был выбран язык, который создан фирмой Borland и полное название которого – турбоассемблер, сокращенно TASM. Надо отметить, что этот язык наиболее часто используется на ПК.

2.4 Постановка задачи

Разработать программу тестирования оперативной памяти и сбора сведений о ПК.

Реализовать меню, в котором пользователю предлагается выбор из трёх пунктов:

1 – сбор сведений о системе;

2 – тест памяти;

3 – выход.

Сбор сведений должен осуществляться в виде списка устройств с текущим состоянием. Состояние от названия устройства должно отделяться двоеточием. Список устройств и возможных их состояний см. в таблице 2.1.

Пункт «тест памяти» должен осуществлять проверку ячеек памяти на работоспособность. Существует два типа неисправностей ячеек памяти:

- «постоянные нули»;

- «постоянные единицы».

Вид неисправности «постоянные нули» заключается в следующем: предположим, что бит №4 в байте, изображенном на рис. 2.1 – неисправный. В данный момент в байт записано число ноль (восемь нулей в двоичной системе исчисления), если считать содержимое этого байта, то на выходе получиться ноль – вроде бы он исправен.

7

6

5

4

3

2

1

0

0

0

0

0

0

0

0

0

Рис. 2.1. Код неисправности «постоянные нули»

Но это лишь только видимость, если в этот байт записать число FFh (восемь единиц в шестнадцатеричной системе счисления), что в двоичной системе счисления эквивалентно восьми единицам, то получится картина, представленная на рис. 2.2. В этом случае, если считать содержимое этого байта, на выходе получиться EFh, то есть, записывая в бит №4 единицу, мы при считывании все равно получаем ноль. Следовательно бит № 4, а значит и байт, неисправен.

Вид неисправности «постоянные единицы» схож с видом «постоянные нули». Разница состоит лишь в том, что в виде «постоянные нули» неисправные биты находятся всегда в нулевом состоянии, а в виде «постоянные единицы» в единичном.

7

6

5

4

3

2

1

0

1

1

1

1

1

1

1

1

Рис. 2.2 Код неисправности «постоянные единицы»

В связи с этим необходимо реализовать проверку ячеек памяти на два вида неисправностей: «постоянные нули» и «постоянные единицы».


Страница: