Что такое системный таймер

4 коротких сигнала при включении компьютера — способы решения

Что такое системный таймер. Смотреть фото Что такое системный таймер. Смотреть картинку Что такое системный таймер. Картинка про Что такое системный таймер. Фото Что такое системный таймер

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

Однако, что могут означать 4 коротких звуковых сигнала, раздающихся при включении компьютера?

Разным типам BIOS соответствуют разные виды сигналов. Давайте рассмотрим три основных типа BIOS — AMI BIOS, AWARD BIOS, PHOENIX BIOS.

4 коротких сигнала для AMI BIOS – говорят о неисправности системного таймера. А у двух других типов BIOS и вовсе нет такого рода сигналов. Поэтому если при включении компьютера вы услышите 4 коротких сигнала, значит у вас AMI BIOS. Какие пути решения данной проблемы существуют?

Что такое системный таймер. Смотреть фото Что такое системный таймер. Смотреть картинку Что такое системный таймер. Картинка про Что такое системный таймер. Фото Что такое системный таймер

Что такое системный таймер. Смотреть фото Что такое системный таймер. Смотреть картинку Что такое системный таймер. Картинка про Что такое системный таймер. Фото Что такое системный таймер

Что такое системный таймер. Смотреть фото Что такое системный таймер. Смотреть картинку Что такое системный таймер. Картинка про Что такое системный таймер. Фото Что такое системный таймер

Как правило, выполнение этих пунктов достаточно, чтобы исправить ошибку системного таймера. Однако бывают варианты выхода из строя комплектующих, а также возможна поломка материнской платы. Для выявления неисправностей, следует продиагностировать компьютер, что лучше сделать в соответствующем сервисе.

Источник

Системный таймер на материнской плате что это

Иногда при загрузке пользователь ПК слышит 4 коротких сигнала BIOS. Что они означают? В данном случае мы имеем дело с информационным сообщением BIOS, говорящем об определенной ошибке при прохождении процедуры проверки оборудования POST.

Что такое системный таймер. Смотреть фото Что такое системный таймер. Смотреть картинку Что такое системный таймер. Картинка про Что такое системный таймер. Фото Что такое системный таймер

Поскольку различные производители БИОС имеют различные кодовые обозначения звуковых сигналов, то значение четырех коротких сигналов зависит от материнской платы и типа БИОС, установленной на плате. Для того, чтобы узнать тип БИОС, вы должны обратиться к инструкции материнской платы (разумеется, в том случае, если название производителя BIOS не пишется на экране монитора при загрузке или его невозможно найти на поверхности материнской платы).

Обычно четыре коротких сигнала задействуют такие производители БИОС, как AMI и AST. В их БИОС подобные информационные сообщения имеют различное значение. У AMI четыре коротких сигнала BIOS означают неисправность системного таймера – специальной микросхемы, которая используется для измерения промежутков времени, а также управления некоторыми устройствами материнской платы. Если подобный сигнал вы слышите в первый раз, то есть смысл перезагрузить компьютер и проверить, не был ли предыдущий сбой случайным. Если сигнал повторяется, то это означает, что микросхема системного таймера вышла из строя и ее придется менять. Неисправность системного таймера, в свою очередь, повлечет за собой необходимость ремонта материнской платы или ее замены.

Также 4 коротких сигнала BIOS могут теоретически услышать те пользователи, которые обладают компьютерами с установленной AST BIOS. У AST BIOS данное сообщение имеет совсем другой смысл, нежели у AMI BIOS, а именно – невозможность обратиться к клавиатуре. Очень часто данная ошибка бывает лишь следствием того, что клавиатура плохо подсоединена к системному блоку. Чтобы полностью исключить данную возможность, вам необходимо проверить надежность подсоединения штекера клавиатуры в соответствующий разъем системного блока. Если эта процедура не приводит к успеху, то клавиатуру следует заменить. Данное сообщение не возникает при неисправности самого контроллера клавиатуры, поскольку в AST BIOS для этого случая предусмотрен другой сигнал.

Наш железный друг каждый день разговаривает с нами, да именно разговаривает, не нужно смотреть на меня как на сумасшедшую.

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

Первое, что нам нужно сделать – это выяснить, какая модель BIOS установлена у нас на компьютере.
Версию BIOS можно узнать при загрузке компьютера,
Что такое системный таймер. Смотреть фото Что такое системный таймер. Смотреть картинку Что такое системный таймер. Картинка про Что такое системный таймер. Фото Что такое системный таймер
или можно воспользоваться сторонними программами, например BiosAgent.

Что такое системный таймер. Смотреть фото Что такое системный таймер. Смотреть картинку Что такое системный таймер. Картинка про Что такое системный таймер. Фото Что такое системный таймер

Так же можно открыть боковую крышку компьютера и найти чип с надписью о версии BIOS.

Что такое системный таймер. Смотреть фото Что такое системный таймер. Смотреть картинку Что такое системный таймер. Картинка про Что такое системный таймер. Фото Что такое системный таймер

Теперь, когда мы узнали версию BIOS, осталось понять ее язык.

AMI BIOS
Сигналов нет
Ошибки по питанию
Неисправен или не подключен к материнской плате блок питания. Или не подключен к материнской плате динамик.
Решение – проверить материнскую плату с другим блоком питания, проверить подключение динамика, заменить материнскую плату

1 короткий
Ошибок не обнаружено
Все проверки прошли нормально

2 коротких
Ошибка четности ОЗУ
Проблема с планками памяти.
Решение – прочистка слотов памяти пылесосом, прочистка контактов планок памяти. Смена слотов для планки (поменять местами), запуск с одной планкой. Замена памяти.

3 коротких
Другие ошибки ОЗУ
Проблема с планками памяти.
Решение – прочистка слотов памяти пылесосом, прочистка контактов планок памяти. Смена слотов для планки (поменять местами), запуск с одной планкой. Замена памяти.

4 коротких
Неисправность системного таймера.
Неисправность системного таймера или первого банка памяти.
Решение – Заменить материнскую плату

5 коротких
Ошибка процессора
Неисправность процессора
Решение – Заменить процессор

6 коротких
Ошибка линии управления A20
Неисправность микросхемы контроллера клавиатуры, которая не позволяет переключить процессор в защищенный режим.
Решение – Замените клавиатурный контроллер

7 коротких
Ошибка виртуального режима процессора
Неисправность в процессоре или материнской платы
Решение – проверить материнскую плату с другим процессором. Замена мат. платы или процессора

8 коротких
Ошибка чтения/записи видеопамяти
Отсутствует или неисправен видеоадаптер.
Решение – Заменить видео карту.

9 коротких
Несовпадение контрольной суммы ПЗУ BIOS
Возможно, неисправна и должна быть заменена или перепрошита микросхема ПЗУ BIOS
Решение – Сбрось CMOS-память джампером

10 коротких
Ошибка чтения/записи регистра управления питанием в энергонезависимой памяти
Невозможна запись в RAM CMOS.
Решение – Заменить материнскую плату

1 длинный, 2 коротких
Ошибка видеосистемы
Не работает видеокарта.
Решение – Проверить разъем монитора и его подключение. Слот расширения. Неисправна видеокарта — заменить

1 длинный, 3 коротких
Ошибка при проверке видео памяти.
Обнаружена ошибка в памяти выше 64К
Не работает видеокарта.
Решение – Проверить разъем монитора и его подключение. Слот расширения. Неисправна видеокарта — заменить

1 длинный, 8 коротких
Ошибка при проверке дисплейного адаптера
Не подключен монитор.
Решение – Проверить разъем монитора и его подключение. Проверить монитор. Замена дисплейного адаптера

AWARD BIOS

Сигналов нет
Не работает блок питания или материнская плата.
Неисправен или не подключен к материнской плате блок питания. Или не подключен к материнской плате динамик.
Решение – проверить материнскую плату с другим блоком питания, проверить подключение динамика, заменить материнскую плату

непрерывный
Ошибка питания или Ошибка памяти
Неисправен или не подключен к материнской плате блок питания.
Решение – проверить материнскую плату с другим блоком питания, проверить подключение динамика, заменить материнскую плату или блок питания.
Проблема с планками памяти.
Решение – прочистка слотов памяти пылесосом, прочистка контактов планок памяти. Смена слотов для планки (поменять местами), запуск с одной планкой. Замена памяти.

1 короткий
Ошибок не обнаружено
Все проверки прошли нормально

2 коротких
Обнаружены незначительные ошибки
Решение – На экране монитора появляется предложение войти в программу CMOS и исправить настройки. Проверьте надежность крепления шлейфов в разъемах жесткого диска и материнской платы.

3 длинных
Ошибка контроллера клавиатуры
Решение – Проверьте крепление разъёма клавиатуры, перегрузите компьютер. Замена мат. платы.

1 длинный + 1 короткий
Проблемы с оперативной памятью
Проблема с планками памяти.
Решение – прочистка слотов памяти пылесосом, прочистка контактов планок памяти. Смена слотов для планки (поменять местами), запуск с одной планкой. Замена памяти.

1 длинный +2 коротких
Неисправен видеоадаптер или нет контакта в его разъёме. Также возможен неконтакт кабеля монитора.
Не работает видеокарта.
Решение – Проверить разъем монитора и его подключение. Слот расширения. Неисправна видеокарта — заменить

1 длинный + 3 коротких
Ошибка инициализации клавиатуры или нет видеокарты или ошибка видеопамяти
Решение – Проверить провод и подключение.
Замените клавиатурный контроллер.Нет видеокарты или ошибка видеопамяти.

1 длинный + 9 коротких
Ошибка при чтении из ПЗУ
Решение – Проверь батарею и сбрось CMOS

1 длинный повторяющийся
Ошибка памяти
Проблема с планками памяти.
Решение – прочистка слотов памяти пылесосом, прочистка контактов планок памяти. Смена слотов для планки (поменять местами), запуск с одной планкой. Замена памяти.

1 короткий повторяющийся
Проблемы с блоком питания
Решение – прочистка блока питания от пыли. Замена Б.П.

Высоко тональные во время работы
Перегрев процессора
Решение – Заменить вентилятор процессора.

Чередующиеся низко- и высоко тональные
Процессор
Решение – проверить крепление процессора. Замена процессора.

Так же встречаются следующие виды BIOS: Phoenix BIOS, AST BIOS, Compaq BIOS, IBM Desktop BIOS, IBM Thinkpad BIOS, Mylex BIOS, Mylex 386 BIOS, Quadtel BIOS

Что такое системный таймер. Смотреть фото Что такое системный таймер. Смотреть картинку Что такое системный таймер. Картинка про Что такое системный таймер. Фото Что такое системный таймер

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

Однако, что могут означать 4 коротких звуковых сигнала, раздающихся при включении компьютера?

Разным типам BIOS соответствуют разные виды сигналов. Давайте рассмотрим три основных типа BIOS — AMI BIOS, AWARD BIOS, PHOENIX BIOS.

4 коротких сигнала для AMI BIOS – говорят о неисправности системного таймера. А у двух других типов BIOS и вовсе нет такого рода сигналов. Поэтому если при включении компьютера вы услышите 4 коротких сигнала, значит у вас AMI BIOS. Какие пути решения данной проблемы существуют?

Что такое системный таймер. Смотреть фото Что такое системный таймер. Смотреть картинку Что такое системный таймер. Картинка про Что такое системный таймер. Фото Что такое системный таймер

Что такое системный таймер. Смотреть фото Что такое системный таймер. Смотреть картинку Что такое системный таймер. Картинка про Что такое системный таймер. Фото Что такое системный таймер

Что такое системный таймер. Смотреть фото Что такое системный таймер. Смотреть картинку Что такое системный таймер. Картинка про Что такое системный таймер. Фото Что такое системный таймер

Как правило, выполнение этих пунктов достаточно, чтобы исправить ошибку системного таймера. Однако бывают варианты выхода из строя комплектующих, а также возможна поломка материнской платы. Для выявления неисправностей, следует продиагностировать компьютер, что лучше сделать в соответствующем сервисе.

Источник

Аппаратное обеспечение IBM PC

5. СИСТЕМНЫЙ ТАЙМЕР

Необходимо отметить, что прерывание INT 1Ch вызывается обработчиком прерывания INT 8h до сброса контроллера прерывания, поэтому во время выполнения прерывания INT 1Ch все аппаратные прерывания запрещены. В частности, запрещены прерывания от клавиатуры.

Обработчик прерывания INT 1Ch должен заканчиваться командой IRET. Если же вы подготавливаете собственный обработчик для прерывания INT 8h, перед завершением его работы необходимо сбросить контроллер прерываний. Это можно сделать, например, так:

Приведенный ниже рисунок иллюстрирует механизм обработки прерывания таймера:

Таймер обычно реализуется на микросхеме Intel 8253 (для компьютеров IBM PC и IBM XT) или 8254 (для компьютеров IBM AT и IBM PS/2). Следующий раздел книги посвящен описанию микросхемы 8254.

5.1. Микросхемы таймера 8253/8254

Регистр счетчика CE работает в режиме вычитания. Его содержимое уменьшается по заднему фронту сигнала CLOCK при условии, что на вход GATE установлен уровень логической 1.

В зависимости от режима работы таймера при достижении счетчиком CE нуля тем или иным образом изменяется выходной сигнал OUT.

Буферный регистр OL предназначен для запоминания текущего содержимого регистра счетчика CE без остановки процесса счета. После запоминания буферный регистр доступен программе для чтения.

Регистр констант пересчета CR может загружаться в регистр счетчика, если это требуется в текущем режиме работы таймера.

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

Упрощенная схема взаимодействия регистров канала приведена на рисунке:

В режиме однократного выполнения функций перед началом счета содержимое регистра констант пересчета CR переписывается в регистр счетчика CE по сигналу CLOCK, если сигнал GATE установлен в 1. В дальнейшем содержимое регистра CE уменьшается по мере прихода импульсов CLOCK. Процесс счета можно приостановить, если подать на вход GATE уровень логического 0. Если затем на вход GATE подать 1, счет будет продолжен дальше. Для повторения выполнения функции необходима новая загрузка регистра CR, т.е. повторное программирование таймера.

При работе с перезапуском не требуется повторного программирования таймера для выполнения той же функции. По фронту сигнала GATE значение константы из регистра CR вновь переписывается в регистр CE, даже если текущая операция не была завершена.

В режиме автозагрузки регистр CR автоматически переписывается в регистр CE после завершения счета. Сигнал на выходе OUT появляется только при наличии на входе GATE уровня логической 1. Этот режим используется для создания программируемых импульсных генераторов и генераторов прямоугольных импульсов (меандра).

В компьютере IBM PC/XT/AT/PS2 задействованы все три канала таймера.

Канал 0 используется в системных часах времени суток (не следует путать с часами реального времени, реализованными на другой микросхеме). Этот канал работает в режиме 3 и используется как генератор импульсов с частотой примерно 18.2 Гц. Именно эти импульсы вызывают аппаратное прерывание INT 8h.

Канал 1 используется для регенерации содержимого динамической памяти компьютера. Выход канала OUT используется для запроса к каналу прямого доступа DMA, который и выполняет обновление содержимого памяти. Вам не следует перепрограммировать этот канал, так как это может привести к нарушениям в работе основной оперативной памяти компьютера.

Канал 2 подключен к громкоговорителю компьютера и может быть использован для генерации различных звуков или музыки, либо как генератор случайных чисел. Канал использует режим 3 таймера 8253/8254.

5.2. Программирование таймера на уровне портов

Приведем формат управляющего регистра:

Мы будем рассматривать только режим 3, так как именно он используется в каналах 0 и 2.

Поле SC определяет номер канала, для которого предназначено управляющее слово. Если в этом поле задано значение 11, будет выполняться чтение состояния канала.

Приведем формат команды RBC чтения слова состояния канала:

С помощью этой команды вы можете выполнять операции чтения состояния каналов либо запоминание регистра счетчика CE каналов. Можно выполнять эти операции как для отдельных каналов, так и для всех каналов одновременно, если установить соответствующие биты (1, 2, 3) в 1.

Формат слова состояния канала напоминает формат регистра управляющего слова, за исключением двух старших разрядов 7 и 6:

Разряд FN используется, в основном, в режимах 1 и 5 для определения, произошла ли загрузка константы из регистра CR в регистр счетчика CE.

Разряд OUT позволяет определить состояние выходной линии канала OUT в момент выполнения команды RBC.

Сразу после этого канал таймера начнет выполнять требуемую функцию.

Для чего вам может понадобиться перепрограммирование каналов таймера?

Если вам надо повысить точность измерения времени, выполняемого с помощью канала 0 таймера, вы можете увеличить частоту генерируемых этим каналом импульсов (стандартно 18,2 Гц). По окончании измерений режим работы канала необходимо восстановить для правильного функционирования системы.

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

Приведем пример программы, отображающей слово состояния и содержимое счетчика для всех трех каналов таймера:

5.3. Средства BIOS для работы с таймером

Для работы с таймером (точнее говоря, для работы с каналом 0 таймера) BIOS содержит две функции прерывания INT 1Ah. Они позволяют прочитать текущее содержимое счетчика и изменить его.

Функция 00h предназначена для чтения содержимого счетчика таймера:

Изменить содержимое счетчика таймера можно с помощью следующей функции:

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

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

Мы подготовили функцию для формирования задержек с помощью таймера:

Функция использует только одно слово регистра таймера, что позволяет формировать задержки длительностью до 65536 тиков таймера. Приведенная ниже программа демонстрирует использование функции для генерации примерно десятисекундной задержки :

BIOS компьютеров IBM AT содержит еще две интересные функции для работы с таймером. Это функции 83h и 86h прерывания INT 15h.

Функция 83h позволяет запустить таймер на счет, указав адрес некоторого байта в оперативной памяти. Программа, запустившая таймер, сразу после запуска получает управление. По истечении времени, заданного при запуске таймера, функция устанавливает старший бит указанного байта в единицу, сигнализируя таким образом программе о завершении указанного временного интервала. Программа может также отменить работу таймера в этом режиме.

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

Приведем формат вызова функции 83h прерывания INT 15h:

Функция 86h специально предназначена для формирования задержек. Она позволяет определять время задержки в микросекундах, что достаточно удобно для многих задач. Во время выполнения задержки разрешены прерывания. Формат вызова функции:

5.4. Средства MS-DOS для работы с таймером

MS-DOS использует четыре функции прерывания INT 21h для работы с системным таймером. Эти функции позволяют узнать и установить текущие дату и время. MS-DOS версии 3.30 и более поздних версий при установке времени и даты изменяет также показания часов реального времени.

Для получения текущей даты используется функция 2Ah:

Обратите внимание на то, что функция возвращает вам номер дня недели, который она вычисляет на основе даты.

Для установки даты используйте функцию 2Bh:

Для того, чтобы определить текущее время, можно воспользоваться функцией 2Ch:

Точность времени, полученного при помощи этой функции, определяется таймером (время обновляется 18.2 раза в секунду).

Для установки времени можно использовать функцию 2Dh:

Стандартные библиотеки трансляторов Microsoft QC 2.5 и C 6.0 содержат многочисленные функции для работы с датой и временем. Они основаны на описанных выше функциях MS-DOS и предоставляют широкие возможности для отображения даты и времени в различных форматах. Подробное описание этих функций и примеры их использования вы найдете в документации на библиотеки. К сожалению, в этих библиотеках нет функций для организации программных задержек.

5.5. Таймер и музыка

Как мы уже говорили, канал 2 микросхемы 8254 связан с громкоговорителем компьютера. Однако громкоговоритель не просто соединен с выходом OUT канала 2. Порт вывода 61h также используется для управления громкоговорителем. Младший бит порта 61h подключен ко входу GATE канала 2 таймера. Этот бит при установке в 1 разрешает работу канала, т.е. генерацию импульсов для громкоговорителя.

Дополнительно для управления громкоговорителем используется бит 1 порта 61h. Если этот бит установлен в 1, импульсы от канала 2 таймера смогут проходить на громкоговоритель.

Так как остальные 6 битов порта 61h используются для других целей, установка младших битов должна выполняться таким образом, чтобы значения остальных битов не были изменены. Для этого вначале надо считать байт из порта 61h в рабочую ячейку памяти, установить там нужные биты, затем вывести новое значение байта в порт 61h.

Очевидно, что для выключения звука надо сбросить два младших бита порта 61h в 0 (при этом нельзя изменять значение остальных битов этого порта).

Мелодия (одноголосая), как известно, состоит из нот, разделенных или не разделенных паузами. При проигрывании мелодии необходимо для каждой ноты программировать соответствующим образом канал 2 таймера и включать громкоговоритель (с помощью порта 61h) на определенное время, равное длительности ноты. Затем программа должна выключить динамик и выдержать паузу перед проигрыванием следующей ноты, если такая пауза требуется.

Программа может генерировать звуки и другим способом, не используя таймер. Для этого нужно сбросить младший бит порта 61h и, управляя битом 1 этого порта, формировать импульсы для громкоговорителя. Т.е. программа должна устанавливать этот бит то в 0, то в 1 с некоторым периодом. Высота генерируемого звука будет соответствовать этому периоду.

Можно также комбинировать эти два способа, получая разнообразные звуковые эффекты.

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

Основная идея заключается в использовании прерывания 1Ch, которое вырабатывается таймером с частотой примерно 18,2 Гц. Ваш обработчик этого прерывания осуществляет контроль за выборкой нот из массива, содержащего мелодию, и программирование микросхемы 8254. Например, один раз в полсекунды обработчик проверяет, не пора ли прекратить звучание одной ноты и начать проигрывание следующей ноты. Если пора, он выключает громкоговоритель и перепрограммирует канал 8254 на новую частоту, соответствующую следующей ноте.

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

Мы подготовили функцию, предназначенную для генерации на громкоговорителе тона заданной частоты и длительности:

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

Запускайте эту программу и слушайте, как она работает!

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

Приведем еще одну программу, генерирующую звук без использования таймера. Эта программа формирует импульсы при помощи манипуляций с разрядом 1 порта 61h:

Так как в этой программе для формирования полупериодов используется задержка с помощью команды LOOP, высота генерируемого тона будет зависеть от производительности системы. Такой зависимости можно избежать, если перед началом работы измерять производительность и соответствующим образом корректировать константу, загружаемую в регистр CX перед вызовом команды LOOP.

Измерение производительности лучше всего выполнять с помощью таймера, определяя время выполнения команды LOOP.

5.6. Генерация случайных чисел

Для генерации случайных чисел лучше всего использовать канал 2 в режиме 3. В регистр счетчика канала мы занесем значение, равное диапазону нужных нам случайных чисел. Например, если мы запишем в регистр число 80 и запустим канал таймера, получаемые случайные числа будут лежать в диапазоне от 0 до 79.

Функция rnd_set() предназначена для начальной инициализации генератора случайных чисел:

Через некоторое время после инициализации с помощью функции rnd_get() можно получить готовое случайное число:

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

Программа получает случайные числа и отображает их в наглядном виде с помощью столбчатой диаграммы:

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *