Что такое ввод в информатике

Ввод/вывод

С информатике, ввод/вывод (в англ. языке часто используется сокращение I/Oinput/output) означает взаимодействие между обработчиком информации (например, компьютер) и внешним миром, который может представлять как человек, так и любая другая система обработки информации. Ввод — сигнал или данные, полученные системой, а вывод — сигнал или данные, посланные ею (или из нее). Термин также может использоваться как обозначение (или дополнение к обозначению) определенного действия: «выполнять ввод/вывод» означает выполнение операций ввода или вывода. Устройства ввода-вывода используются человеком (или другой системой) для взаимодействия с компьютером. Например, клавиатуры и мыши — специально разработанные компьютерные устройства ввода, а мониторы и принтеры — компьютерные устройства вывода. Устройства для взаимодействия между компьютерами, как модемы и сетевые карты, обычно служат устройствами ввода и вывода одновременно.

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

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

Высокоуровневая операционная система и программное обеспечение используют другие, более абстрактные концепции и примитивы ввода-вывода. Например, большинство операционных систем реализуют прикладные программы через концепцию файлов. Языки программирования Си и C++, а также операционные системы семейства Unix, традиционно абстрагируют файлы и устройства в виде потоков данных, из которых можно читать и в которые можно записывать, или и то и другое вместе. Стандартная библиотека языка Си реализует функции для работы с потоками для ввода и вывода данных.

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

Содержание

Интерфейс ввода-вывода

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

Установление контакта должно быть реализовано интерфейсом при помощи соответствующих команд типа (ЗАНЯТ, ГОТОВ, ЖДУ), чтобы процессор мог взаимодействовать с устройством ввода-вывода через интерфейс.

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

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

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

Режимы адресации

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

Режимы адресации делятся на множество типов, как например, прямая адресация, косвенная (непрямая) адресация, непосредственная адресация, индексная адресация, базовая адресация, базово-индексная адресация, предполагаемая адресация и т. д.

Прямая адресация

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

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

Косвенная адресация

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

Ввод-вывод с распределением (вводимой информации) по портам (памяти)

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

Источник

Ввод-вывод

В информатике, ввод/вывод (в англ. языке часто используется сокращение I/O) означает взаимодействие между обработчиком информации (например, компьютер) и внешним миром, который может представлять как человек, так и любая другая система обработки информации. Ввод — сигнал или данные, полученные системой, а вывод — сигнал или данные, посланные ею (или из нее). Термин также может использоваться как обозначение (или дополнение к обозначению) определенного действия: «выполнять ввод/вывод» означает выполнение операций ввода или вывода. Устройства ввода-вывода используются человеком (или другой системой) для взаимодействия с компьютером. Например, клавиатуры и мыши — специально разработанные компьютерные устройства ввода, а мониторы и принтеры — компьютерные устройства вывода. Устройства для взаимодействия между компьютерами, как модемы и сетевые карты, обычно служат устройствами ввода и вывода одновременно.

Читайте также:  Что такое нейтральная пронация стопы в кроссовках

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

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

Высокоуровневая операционная система и программное обеспечение используют другие, более абстрактные концепции и примитивы ввода-вывода. Например, большинство операционных систем реализуют прикладные программы через концепцию файлов. Языки программирования Си и C++, а также операционные системы семейства Unix, традиционно абстрагируют файлы и устройства в виде потоков данных, из которых можно читать и в которые можно записывать, или и то и другое вместе. Стандартная библиотека языка Си реализует функции для работы с потоками для ввода и вывода данных.

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

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

Установление контакта должно быть реализовано интерфейсом при помощи соответствующих команд типа (ЗАНЯТО, ГОТОВ, ЖДУ), чтобы процессор мог взаимодействовать с устройством ввода-вывода через интерфейс.

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

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

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

Содержание

Режимы адресации

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

Режимы адресации делятся на множество типов, как например, прямая адресация, косвенная (непрямая) адресация, непосредственная адресация, индексная адресация, базовая адресация, базово-индексная адресация, предполагаемая адресация и т.д.

Прямая адресация

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

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

Косвенная адресация

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

Ввод-вывод с распределением (вводимой информации) по портам (памяти)

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

Источник

Ввод-Вывод

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

Другой тип устройств ввода-вывода — символьные устройства. Символьное устройство принимает или предоставляет поток неструктурированных символов. Оно не является адресуемым и не выполняет операцию поиска. Принтеры, сетевые адаптеры, мыши и большинство других устройств, не похожих на диски, можно считать символьными устройствами.

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

Часто интерфейс между устройством и контроллером является интерфейсом низкого уровня. С диска в контроллер поступает последовательный поток битов, начинающийся с заголовка сектора
(преамбулы), за которым следует 4096 бит в секторе, и контрольная сумма, называемая кодом исправления ошибок ЕСС ( Error Correcting Code ). Заголовок сектора записывается на диск во время форматирования. Он содержит номера цилиндра и сектора, размер сектора, коды синхронизации и другую служебную информацию.

Читайте также:  Что такое гомеопатические препараты в уколах

Работа контроллера заключается в конвертировании последовательного потока битов в блок байтов и коррекцию ошибок. Обычно байтовый блок накапливается в буфере контроллера. Затем проверя-
ется контрольная сумма блока, и если она совпадает с указанной в заголовке сектора, то блок считается принятым без ошибок. После этого блок копируется в оперативную память.

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

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

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

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

Одним из ключевых вопросов является способ переноса данных — синхронный (блокирующий) или асинхронный (управляемый прерываниями). Большинство операций ввода-вывода на физическом
уровне являются асинхронными — ЦП запускает перенос данных и переключается на другой процесс, пока не придет прерывание.

Еще одним аспектом ПО ввода-вывода является буферизация. Часто данные, поступающие с устройства, не могут быть сохранены там, куда они направлены. Например, когда пакет приходит по сети, ОС не знает, куда его поместить, пока не будет проанализировано его содержимое. Буферизация предполагает копирование данных в больших количествах, что часто является основным фактором снижения производительности операций ввода-вывода.

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

Существуют три различных способа осуществления операций ввода-вывода. Простейший вид ввода-вывода состоит в том, что всю работу выполняет центральный процессор. Этот метод называется
программным вводом-выводом. ЦП вводит или выводит каждый байт или слово, находясь в цикле ожидания готовности устройства ввода-вывода. Второй способ представляет собой управляемый прерываниями ввод-вывод, при котором ЦП начинает передачу ввода-вывода для символа или слова, после чего переключается на другой процесс, пока прерывание от устройства не сообщит ему об окончании операции ввода-вывода. Третий способ заключается в использовании прямого доступа к памяти ( DMA — Direct Memory Access ), при котором отдельная микросхема управляет переносом целого блока данных и инициирует прерывание только после окончания операции переноса блока.

Источник

Устройства ввода графической информации

Графическая информация – это изображения, эскизы, графики, диаграммы и пр.

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

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

Но это занимает чересчур много времени, поэтому были придуманы альтернативные варианты ввода.

Мышь отлично подходит, как устройство ввода графической информации, но тоже имеет недостатки. Её основное предназначение несколько другое.

Работа, связанная с рисованием чего-либо, напоминает движение карандашом по бумаге, но из-за формы мыши нужно обладать особыми навыками, чтобы делать все ровно и аккуратно. Также сканер может иногда не срабатывать, а если мышь беспроводная, то работа становится сложнее, за счет лагов.

Читайте также:  Что такое ссылка на ячейку где используются ссылки на ячейку

Лучшим устройством для ручного ввода графической информации считается графический планшет. Он имитирует работу настоящей ручкой.

Состоит из пера (ручки) и планшета, способного распознавать близость и нажатие пера, поэтому результат максимально схож с изображением на бумаге. Форма пера схожа с формой карандаша или ручки, отчего не возникает дискомфорта.

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

Самое простое в использовании и точное устройство – сканер. Чтобы просканировать что-то, нужно положить исходный документ внутрь, закрыть крышкой и запустить устройство.

По завершении процесса вы получите точную копию, которую можно сохранить на компьютере или распечатать на принтере.

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

Устройства ввода звуковой информации

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

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

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

Устройства ввода текстовой информации

Для ввода текстовых и числовых данных предусмотрена клавиатура.

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

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

Указательные (координатные) устройства ввода информации

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

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

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

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

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

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

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

Тачпад

Тачпад или сенсорная панель – это устройство для управления курсором, работа с которой производится одним или несколькими пальцами. Чаще всего он выполнен в виде небольшого прямоугольника.

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

Электрическое поле меняется и микроконтроллер понимает, в каком месте происходит касание. Потом он передает эти данные компьютеру.

Тачскрин

Тачскрин – это сенсорный экран, прикосновение к поверхности которого контролируют действия на дисплее. Существует несколько видов этого устройства, которые сейчас устанавливаются: ёмкостные и резистивные. Ёмкостные более современные.

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

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

Трекбол

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

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

Другие устройства ввода информации на компьютер

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

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

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

Источник

Информационный сайт