Поможем написать учебную работу
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
Термин "информатика" (франц. informatique) происходит от французских слов information (информация) и automatique (автоматика) и дословно означает "информационная автоматика".
Широко распространён также англоязычный вариант этого термина "Сomputer science", что означает буквально "компьютерная наука".
Инфоpматика это основанная на использовании компьютерной техники дисциплина, изучающая структуру и общие свойства информации, а также закономерности и методы её создания, хранения, поиска, преобразования, передачи и применения в различных сферах человеческой деятельности. |
В 1978 году международный научный конгресс официально закрепил за понятием "информатика" области, связанные с разработкой, созданием, использованием и материально-техническим обслуживанием систем обработки информации, включая компьютеры и их программное обеспечение, а также организационные, коммерческие, административные и социально-политические аспекты компьютеризации массового внедрения компьютерной техники во все области жизни людей.
Таким образом, информатика базируется на компьютерной технике и немыслима без нее.
Инфоpматика научная дисциплина с широчайшим диапазоном применения. Её основные направления:
Информатику обычно представляют состоящей из двух частей:
Технические средства, то есть аппаратура компьютеров, в английском языке обозначаются словом Hardware, которое буквально переводится как "твёрдые изделия".
А для программных средств выбрано (а точнее, создано) очень удачное слово Software (буквально "мягкие изделия"), которое подчёркивает равнозначность программного обеспечения и самой машины и вместе с тем подчёркивает способность программного обеспечения модифицироваться, приспосабливаться, развиваться.
Программное обеспечение это совокупность всех программ, используемых компьютерами, а также вся область деятельности по их созданию и применению. |
Помимо этих двух общепринятых ветвей информатики выделяют ещё одну существенную ветвь алгоритмические средства. Для неё российский академик А.А. Дородницин предложил название Brainware (от англ. brain интеллект). Эта ветвь связана с разработкой алгоритмов и изучением методов и приёмов их построения.
Алгоритмы это правила, предписывающие выполнение последовательностей действий, приводящих к решению задачи. |
Нельзя приступить к программированию, не разработав предварительно алгоритм решения задачи.
Роль информатики в развитии общества чрезвычайно велика. С ней связано начало революции в области накопления, передачи и обработки информации. Эта революция, следующая за революциями в овладении веществом и энергией, затрагивает и коренным образом преобразует не только сферу материального производства, но и интеллектуальную, духовную сферы жизни.
Рост производства компьютерной техники, развитие информационных сетей, создание новых информационных технологий приводят к значительным изменениям во всех сферах общества: в производстве, науке, образовании, медицине и т.д.
Термин "информация" происходит от латинского слова "informatio", что означает сведения, разъяснения, изложение.
Информация это настолько общее и глубокое понятие, что его нельзя объяснить одной фразой. В это слово вкладывается различный смысл в технике, науке и в житейских ситуациях.
В обиходе информацией называют любые данные или сведения, которые кого-либо интересуют. |
Например, сообщение о каких-либо событиях, о чьей-либо деятельности и т.п. "Информировать" в этом смысле означает "сообщить нечто, неизвестное раньше".
Информация сведения об объектах и явлениях окружающей среды, их параметрах, свойствах и состоянии, которые воспринимают информационные системы (живые организмы, управляющие машины и др.) в процессе жизнедеятельности и работы. |
Одно и то же информационное сообщение (статья в газете, объявление, письмо, телеграмма, справка, рассказ, чертёж, радиопередача и т.п.) может содержать разное количество информации для разных людей в зависимости от их предшествующих знаний, от уровня понимания этого сообщения и интереса к нему.
Так, сообщение, составленное на японском языке, не несёт никакой новой информации человеку, не знающему этого языка, но может быть высокоинформативным для человека, владеющего японским. Никакой новой информации не содержит и сообщение, изложенное на знакомом языке, если его содержание непонятно или уже известно.
Информация есть характеристика не сообщения, а соотношения между сообщением и его потребителем. Без наличия потребителя, хотя бы потенциального, говорить об информации бессмысленно. |
В случаях, когда говорят об автоматизированной работе с информацией посредством каких-либо технических устройств, обычно в первую очередь интересуются не содержанием сообщения, а тем, сколько символов это сообщение содержит.
Применительно к компьютерной обработке данных под информацией понимают некоторую последовательность символических обозначений (букв, цифр, закодированных графических образов и звуков и т.п.), несущую смысловую нагрузку и представленную в понятном компьютеру виде. Каждый новый символ в такой последовательности символов увеличивает информационный объём сообщения. |
Более развёрнутое представление о существе рассматриваемых вопросов дается в [11, 41, 42].
Информация может существовать в самых разнообразных формах:
Предметы, процессы, явления материального или нематериального свойства, рассматриваемые с точки зрения их информационных свойств, называются информационными объектами.
Информация передаётся в виде сообщений от некоторого источника информации к её приёмнику посредством канала связи между ними. Источник посылает передаваемое сообщение, которое кодируется в передаваемый сигнал. Этот сигнал посылается по каналу связи. В результате в приёмнике появляется принимаемый сигнал, который декодируется и становится принимаемым сообщением.
|
канал связи |
|
ИСТОЧНИК |
® |
ПРИЁМНИК |
Примеры:
Передача информации по каналам связи часто сопровождается воздействием помех, вызывающих искажение и потерю информации.
Какое количество информации содержится, к примеру, в тексте романа "Война и мир", в фресках Рафаэля или в генетическом коде человека? Ответа на эти вопросы наука не даёт и, по всей вероятности, даст не скоро.
А возможно ли объективно измерить количество информации? Важнейшим результатом теории информации является вывод:
В определенных, весьма широких условиях можно пренебречь качественными особенностями информации, выразить её количество числом, а также сравнить количество информации, содержащейся в различных группах данных. |
В настоящее время получили распространение подходы к определению понятия "количество информации", основанные на том, что информацию, содержащуюся в сообщении, можно нестрого трактовать в смысле её новизны или, иначе, уменьшения неопределённости наших знаний об объекте.
Так, американский инженер Р. Хартли (1928 г.) процесс получения информации рассматривает как выбор одного сообщения из конечного наперёд заданного множества из N равновероятных сообщений, а количество информации I, содержащееся в выбранном сообщении, определяет как двоичный логарифм N.
Формула Хартли: I = log2N. |
Допустим, нужно угадать одно число из набора чисел от единицы до ста. По формуле Хартли можно вычислить, какое количество информации для этого требуется: I = log2100 » 6,644. То есть сообщение о верно угаданном числе содержит количество информации, приблизительно равное 6,644 единиц информации.
Приведем другие примеры равновероятных сообщений:
Определим теперь, являются ли равновероятными сообщения "первой выйдет из дверей здания женщина" и "первым выйдет из дверей здания мужчина". Однозначно ответить на этот вопрос нельзя. Все зависит от того, о каком именно здании идет речь. Если это, например, станция метро, то вероятность выйти из дверей первым одинакова для мужчины и женщины, а если это военная казарма, то для мужчины эта вероятность значительно выше, чем для женщины.
Для задач такого рода американский учёный Клод Шеннон предложил в 1948 г. другую формулу определения количества информации, учитывающую возможную неодинаковую вероятность сообщений в наборе.
Формула Шеннона: I = ( p1 log2 p1 + p2 log2 p2 + . . . + pN log2 pN ), |
Легко заметить, что если вероятности p1, ..., pN равны, то каждая из них равна 1/N, и формула Шеннона превращается в формулу Хартли.
Помимо двух рассмотренных подходов к определению количества информации, существуют и другие. Важно помнить, что любые теоретические результаты применимы лишь к определённому кругу случаев, очерченному первоначальными допущениями.
В качестве единицы информации условились принять один бит (англ. bit binary, digit двоичная цифра).
Бит в теории информации количество информации, необходимое для различения двух равновероятных сообщений. |
Бит слишком мелкая единица измерения. На практике чаще применяется более крупная единица байт, равная восьми битам. Именно восемь битов требуется для того, чтобы закодировать любой из 256 символов алфавита клавиатуры компьютера (256=28).
Широко используются также ещё более крупные производные единицы информации:
В последнее время в связи с увеличением объёмов обрабатываемой информации входят в употребление такие производные единицы, как:
За единицу информации можно было бы выбрать количество информации, необходимое для различения, например, десяти равновероятных сообщений. Это будет не двоичная (бит), а десятичная (дит) единица информации.
Информацию можно:
|
|
|
Все эти процессы, связанные с определенными операциями над информацией, называются информационными процессами.
Свойства информации:
|
|
Информация достоверна, если она отражает истинное положение дел. Недостоверная информация может привести к неправильному пониманию или принятию неправильных решений.
Достоверная информация со временем может стать недостоверной, так как она обладает свойством устаревать, то есть перестаёт отражать истинное положение дел.
Информация полна, если её достаточно для понимания и принятия решений. Как неполная, так и избыточная информация сдерживает принятие решений или может повлечь ошибки.
Точность информации определяется степенью ее близости к реальному состоянию объекта, процесса, явления и т.п.
Ценность информации зависит от того, насколько она важна для решения задачи, а также от того, насколько в дальнейшем она найдёт применение в каких-либо видах деятельности человека.
Только своевременно полученная информация может принести ожидаемую пользу. Одинаково нежелательны как преждевременная подача информации (когда она ещё не может быть усвоена), так и её задержка.
Если ценная и своевременная информация выражена непонятным образом, она может стать бесполезной.
Информация становится понятной, если она выражена языком, на котором говорят те, кому предназначена эта информация.
Информация должна преподноситься в доступной (по уровню восприятия) форме. Поэтому одни и те же вопросы по разному излагаются в школьных учебниках и научных изданиях.
Информацию по одному и тому же вопросу можно изложить кратко (сжато, без несущественных деталей) или пространно (подробно, многословно). Краткость информации необходима в справочниках, энциклопедиях, учебниках, всевозможных инструкциях.
Обработка информации получение одних информационных объектов из других информационных объектов путем выполнения некоторых алгоритмов [15]. |
Обработка является одной из основных операций, выполняемых над информацией, и главным средством увеличения объёма и разнообразия информации.
Средства обработки информации это всевозможные устройства и системы, созданные человечеством, и в первую очередь, компьютер универсальная машина для обработки информации.
Компьютеры обрабатывают информацию путем выполнения некоторых алгоритмов.
Живые организмы и растения обрабатывают информацию с помощью своих органов и систем.
Информационные ресурсы это идеи человечества и указания по их реализации, накопленные в форме, позволяющей их воспроизводство. |
Это книги, статьи, патенты, диссертации, научно-исследовательская и опытно-конструкторская документация, технические переводы, данные о передовом производственном опыте и др. [42].
Информационные ресурсы (в отличие от всех других видов ресурсов трудовых, энергетических, минеральных и т.д.) тем быстрее растут, чем больше их расходуют.
Информационная технология это совокупность методов и устройств, используемых людьми для обработки информации. |
Человечество занималось обработкой информации тысячи лет. Первые информационные технологии основывались на использо-вании счётов и письменности. Около пятидесяти лет назад началось исключительно быстрое развитие этих технологий, что в первую очередь связано с появлением компьютеров.
В настоящее время термин "информационная технология" употребляется в связи с использованием компьютеров для обработки информации. Информационные технологии охватывают всю вычислительную технику и технику связи и, отчасти, бытовую электронику, телевидение и радиовещание.
Они находят применение в промышленности, торговле, управлении, банковской системе, образовании, здравоохранении, медицине и науке, транспорте и связи, сельском хозяйстве, системе социального обеспечения, служат подспорьем людям различных профессий и домохозяйкам.
Народы развитых стран осознают, что совершенствование информационных технологий представляетсамую важную, хотя дорогостоящую и трудную задачу.
В настоящее время создание крупномасштабных информационно-технологических систем является экономически возможным, и это обусловливает появление национальных исследовательских и образовательных программ, призванных стимулировать их разработку.
Информатизация общества организованный социально-экономический и научно-технический процесс создания оптимальных условий для удовлетворения информационных потребностей и реализации прав граждан, органов государственной власти, органов местного самоуправления организаций, общественных объединений на основе формирования и использования информационных ресурсов [53]. |
Цель информатизации улучшение качества жизни людей за счет увеличения производительности и облегчения условий их труда.
Информатизация это сложный социальный процесс, связанный со значительными изменениями в образе жизни населения. Он требует серьёзных усилий на многих направлениях, включая ликвидацию компьютерной неграмотности, формирование культуры использования новых информационных технологий и др.
1.1. Что означает термин "информатика" и каково его происхождение?
1.2. Какие области знаний и административно-хозяйственной деятельности официально закреплены за понятием "информатика" с 1978 года?
1.3. Какие сферы человеческой деятельности и в какой степени затрагивает информатика?
1.4. Назовите основные составные части информатики и основные направления её применения.
1.5. Что подразумевается под понятием "информация" в бытовом, естественно-научном и техническом смыслах?
1.6. Какие формы существования информации Вы можете назвать?
1.7. Приведите примеры знания фактов и знания правил. Назовите новые факты и новые правила, которые Вы узнали за сегодняшний день.
1.8. От кого (или чего) человек принимает информацию? Кому передает информацию?
1.9. В каких формах человек передаёт и принимает информацию?
1.10. Где и как человек хранит информацию?
1.11. Что необходимо добавить в систему "источник информации приёмник информации", чтобы осуществлять передачу сообщений?
1.12. Какие типы действий выполняет человек с информацией?
1.13. Приведите примеры ситуаций, в которых информация
а) создаётся; |
д) копируется; |
и) передаётся; |
б) обрабатывается; |
е) воспринимается; |
к) разрушается; |
в) запоминается; |
ж) измеряется; |
л) ищется; |
г) делится на части; |
з) принимается; |
м) упрощается. |
1.14. Приведите примеры обработки информации человеком. Что является результатами этой обработки?
1.15. Приведите примеры информации:
1.16. Назовите системы сбора и обработки информации в теле человека.
1.17. Приведите примеры технических устройств и систем, предназначенных для сбора и обработки информации.
1.18. От чего зависит информативность сообщения, принимаемого человеком?
1.19. Почему количество информации в сообщении удобнее оценивать не по степени увеличения знания об объекте, а по степени уменьшения неопределённости наших знаний о нём?
1.20. Как определяется единица измерения количества информации?
1.21. В каких случаях и по какой формуле можно вычислить количество информации, содержащейся в сообщении?
1.22. Почему в формуле Хартли за основание логарифма взято число 2?
1.23. При каком условии формула Шеннона переходит в формулу Хартли?
1.24. Что определяет термин "бит" в теории информации и в вычислительной технике?
1.25. Приведите примеры сообщений, информативность которых можно однозначно определить.
1.26. Приведите примеры сообщений, содержащих один (два, три) бит информации.
1.1. Запишите множество вариантов загорания двух светофоров, расположенных на соседних перекрёстках.
[ Ответ ]
1.2. Три человека, Иванов, Петров и Сидоров, образуют очередь. Запишите все возможные варианты образования этой очереди.
[ Ответ ]
1.3. Назовите все возможные комбинации из двух различных нот (всего нот семь: до, ре, ми, фа, соль, ля, си).
[ Ответ ]
1.4. Пусть голосуют 3 человека (голосование "да"/"нет"). Запишите все возможные исходы голосования.
[ Ответ ]
1.5. Предположим, что имеются 3 автомобильные дороги, идущие от Парижа до Тулузы, и 4 от Тулузы до Мадрида. Сколькими способами можно выбрать дорогу от Парижа в Мадрид через Тулузу? Попытайтесь найти систематический метод для последовательного нахождения решения так, чтобы можно было составить список способов, не пропустив ни одного из них.
[ Ответ ]
1.6. Поезд находится на одном из восьми путей. Сколько бит информации содержит сообщение о том, где находится поезд?
[ Ответ ]
1.7. Сколько существует различных двоичных последовательностей из одного, двух, трех, четырёх, восьми символов?
[ Ответ ]
1.8. Каков информационный объём сообщения "Я помню чудное мгновенье" при условии, что один символ кодируется одним байтом и соседние слова разделены одним пробелом?
[ Ответ ]
1.9. Определите приблизительно информационный объём:
1.10. Сколько бит необходимо, чтобы закодировать оценки: "неудовлетворительно", "удовлетворительно", "хорошо" и "отлично"?
[ Ответ ]
1.11. Сколько различных символов, закодированных байтами, содержится в сообщении: 1101001100011100110100110001110001010111 ?
[ Ответ ]
1.12. Сколько байт памяти необходимо, чтобы закодировать изображение на экране компьютерного монитора, который может отображать 1280 точек по горизонтали и 1024 точек по вертикали при 256 цветах?
[ Ответ ]
1.13. Решите уравнение: 8x (бит) = 32 (Кбайт).
[ Ответ ]
1.14. Решите систему уравнений |
ж 2х+2 (бит) = 8y-5 (Кбайт), |
[ Ответ ]
1.15. Определите правила формирования приведённых ниже последовательностей и вставьте пропущенные числа [49]:
а) 1, 3, 5, ..., 9; |
ж) 128, 64, 32, ..., 8; |
н) 15 (27) 42 |
б) 20, 15, ..., 5; |
з) 4, 9, 17, 35, ..., 139; |
30 (...) 55; |
в) 1, 2, 4, ..., 16; |
и) 1, 2, 2, 4, 8, ..., 256; |
о) 10 (50) 15 |
г) 1, 4, 9, ..., 25; |
к) 2, 3, 10, 15, ..., 35; |
17 (...) 20; |
д) 1, 8, 27, ..., 125; |
л) 1, 3, 3, 9, ..., 6561; |
п) 143 (56) 255 |
е) 1, 2, 6, ..., 120; |
м) к, о, ж, з, г, ..., ф; |
218 (...) 114. |
[ Ответ ]
***********************************
Компьютер (англ. computer вычислитель) представляет собой программируемое электронное устройство, способное обрабатывать данные и производить вычисления, а также выполнять другие задачи манипулирования символами [51]. |
Существует два основных класса компьютеров:
Поскольку в настоящее время подавляющее большинство компьютеров являются цифровыми, далее будем рассматривать только этот класс компьютеров и слово "компьютер" употреблять в значении "цифровой компьютер".
Основу компьютеров образует аппаратура (HardWare), построенная, в основном, с использованием электронных и электромеханических элементов и устройств. Принцип действия компьютеров состоит в выполнении программ (SoftWare) заранее заданных, четко определённых последовательностей арифметических, логических и других операций. |
Любая компьютерная программа представляет собой последовательность отдельных команд.
Команда это описание операции, которую должен выполнить компьютер. Как правило, у команды есть свой код (условное обозначение), исходные данные (операнды) и результат. |
Например, у команды "сложить два числа" операндами являются слагаемые, а результатом их сумма. А у команды "стоп" операндов нет, а результатом является прекращение работы программы.
Результат команды вырабатывается по точно определенным для данной команды правилам, заложенным в конструкцию компьютера.
Совокупность команд, выполняемых данным компьютером, называется системой команд этого компьютера. |
Компьютеры работают с очень высокой скоростью, составляющей миллионы - сотни миллионов операций в секунду.
Разнообразие современных компьютеров очень велико. Но их структуры основаны на общих логических принципах, позволяющих выделить в любом компьютере следующие главные устройства:
Эти устройства соединены каналами связи, по которым передается информация.
Основные устройства компьютера и связи между ними представлены на схеме (рис. 2.1). Жирными стрелками показаны пути и направления движения информации, а простыми стрелками пути и направления передачи управляющих сигналов.
Рис. 2.1. Общая схема компьютера
Функции памяти:
Функции процессора:
Та часть процессора, которая выполняет команды, называется арифметико-логическим устройством (АЛУ), а другая его часть, выполняющая функции управления устройствами, называется устройством управления (УУ). |
Обычно эти два устройства выделяются чисто условно, конструктивно они не разделены.
В составе процессора имеется ряд специализированных дополнительных ячеек памяти, называемых регистрами.
Регистр выполняет функцию кратковременного хранения числа или команды. Над содержимым некоторых регистров специальные электронные схемы могут выполнять некоторые манипуляции. Например, "вырезать" отдельные части команды для последующего их использования или выполнять определенные арифметические операции над числами. |
Основным элементом регистра является электронная схема, называемая триггером, которая способна хранить одну двоичную цифру (разряд). Логическая схема триггера описана в разделе 5.7.
Регистр представляет собой совокупность триггеров, связанных друг с другом определённым образом общей системой управления. |
Существует несколько типов регистров, отличающихся видом выполняемых операций.
Некоторые важные регистры имеют свои названия, например:
В основу построения подавляющего большинства компьютеров положены следующие общие принципы, сформулированные в 1945 г. американским ученым Джоном фон Нейманом.
Рис. 2.2. Джон фон Нейман, 1945 г.
1. Принцип программного управления. Из него следует, что программа состоит из набора команд, которые выполняются процессором автоматически друг за другом в определенной последовательности.
Выборка программы из памяти осуществляется с помощью счетчика команд. Этот регистр процессора последовательно увеличивает хранимый в нем адрес очередной команды на длину команды.
А так как команды программы расположены в памяти друг за другом, то тем самым организуется выборка цепочки команд из последовательно расположенных ячеек памяти.
Если же нужно после выполнения команды перейти не к следующей, а к какой-то другой, используются команды условного или безусловного переходов, которые заносят в счетчик команд номер ячейки памяти, содержащей следующую команду. Выборка команд из памяти прекращается после достижения и выполнения команды “стоп”.
Таким образом, процессор исполняет программу автоматически, без вмешательства человека.
2. Принцип однородности памяти. Программы и данные хранятся в одной и той же памяти. Поэтому компьютер не различает, что хранится в данной ячейке памяти число, текст или команда. Над командами можно выполнять такие же действия, как и над данными.
Это открывает целый ряд возможностей. Например, программа в процессе своего выполнения также может подвергаться переработке, что позволяет задавать в самой программе правила получения некоторых ее частей (так в программе организуется выполнение циклов и подпрограмм).
Более того, команды одной программы могут быть получены как результаты исполнения другой программы. На этом принципе основаны методы трансляции перевода текста программы с языка программирования высокого уровня на язык конкретной машины.
3. Принцип адресности. Структурно основная память состоит из перенумерованных ячеек; процессору в произвольный момент времени доступна любая ячейка.
Отсюда следует возможность давать имена областям памяти, так, чтобы к запомненным в них значениям можно было впоследствии обращаться или менять их в процессе выполнения программ с использованием присвоенных имен.
Компьютеры, построенные на этих принципах, относятся к типу фон-неймановских.
Но существуют компьютеры, принципиально отличающиеся от фон-неймановских. Для них, например, может не выполняться принцип программного управления, т.е. они могут работать без “счетчика команд”, указывающего текущую выполняемую команду программы. Для обращения к какой-либо переменной, хранящейся в памяти, этим компьютерам не обязательно давать ей имя. Такие компьютеры называются не-фон-неймановскими.
Команда это описание элементарной операции, которую должен выполнить компьютер. |
В общем случае, команда содержит следующую информацию:
В зависимости от количества операндов, команды бывают:
Команды хранятся в ячейках памяти в двоичном коде.
В современных компьютерах длина команд переменная (обычно от двух до четырех байтов), а способы указания адресов переменных весьма разнообразные.
В адресной части команды может быть указан, например:
Рассмотрим несколько возможных вариантов команды сложения (англ. add сложение), при этом вместо цифровых кодов и адресов будем пользоваться условными обозначениями:
add |
x |
add |
x |
y |
add |
x |
y |
z |
Выполнение команды можно проследить по схеме:
Общая схема компьютера
Как пpавило, этот процесс разбивается на следующие этапы:
При рассмотрении компьютерных устройств принято различать их архитектуру и структуру.
Архитектурой компьютера называется его описание на некотором общем уровне, включающее описание пользовательских возможностей программирования, системы команд, системы адресации, организации памяти и т.д. Архитектура определяет принципы действия, информационные связи и взаимное соединение основных логических узлов компьютера: процессора, оперативного ЗУ, внешних ЗУ и периферийных устройств. Общность архитектуры разных компьютеров обеспечивает их совместимость с точки зрения пользователя. |
Структура компьютера это совокупность его функциональных элементов и связей между ними. Элементами могут быть самые различные устройства от основных логических узлов компьютера до простейших схем. Структура компьютера графически представляется в виде структурных схем, с помощью которых можно дать описание компьютера на любом уровне детализации. |
Наиболее распространены следующие архитектурные решения.
· Классическая архитектура (архитектура фон Неймана) одно арифметико-логическое устройство (АЛУ), через которое проходит поток данных, и одно устройство управления (УУ), через которое проходит поток команд программа (рис. 2.1). Это однопроцессорный компьютер.
К этому типу архитектуры относится и архитектура персонального компьютера с общей шиной, подробно рассмотренная в разделе 2.18 (рис. 2.26). Все функциональные блоки здесь связаны между собой общей шиной, называемой также системной магистралью.
Физически магистраль представляет собой многопроводную линию с гнездами для подключения электронных схем. Совокупность проводов магистрали разделяется на отдельные группы: шину адреса, шину данных и шину управления. |
Периферийные устройства (принтер и др.) подключаются к аппаратуре компьютера через специальные контроллеры устройства управления периферийными устройствами.
Контроллер устройство, которое связывает периферийное оборудование или каналы связи с центральным процессором, освобождая процессор от непосредственного управления функционированием данного оборудования. |
· Многопроцессорная архитектура. Наличие в компьютере нескольких процессоров означает, что параллельно может быть организовано много потоков данных и много потоков команд. Таким образом, параллельно могут выполняться несколько фрагментов одной задачи. Структура такой машины, имеющей общую оперативную память и несколько процессоров, представлена на рис. 2.3.
Рис. 2.3. Архитектура многопроцессорного компьютера
· Многомашинная вычислительная система. Здесь несколько процессоров, входящих в вычислительную систему, не имеют общей оперативной памяти, а имеют каждый свою (локальную). Каждый компьютер в многомашинной системе имеет классическую архитектуру, и такая система применяется достаточно широко.
Однако эффект от применения такой вычислительной системы может быть получен только при решении задач, имеющих очень специальную структуру: она должна разбиваться на столько слабо связанных подзадач, сколько компьютеров в системе.
Преимущество в быстродействии многопроцессорных и многомашинных вычислительных систем перед однопроцессорными очевидно.
· Архитектура с параллельными процессорами. Здесь несколько АЛУ работают под управлением одного УУ. Это означает, что множество данных может обрабатываться по одной программе то есть по одному потоку команд.
Высокое быстродействие такой архитектуры можно получить только на задачах, в которых одинаковые вычислительные операции выполняются одновременно на различных однотипных наборах данных. Структура таких компьютеров представлена на рис. 2.4.
Рис. 2.4. Архитектура с параллельным процессором
В современных машинах часто присутствуют элементы различных типов архитектурных решений. Существуют и такие архитектурные решения, которые радикально отличаются от рассмотренных выше.
Центральный процессор (CPU, от англ. Central Processing Unit) это основной рабочий компонент компьютера, который выполняет арифметические и логические операции, заданные программой, управляет вычислительным процессом и координирует работу всех устройств компьютера. |
Центральный процессор в общем случае содержит в себе:
Современные процессоры выполняются в виде микропроцессоров. Физически микропроцессор представляет собой интегральную схему тонкую пластинку кристаллического кремния прямоугольной формы площадью всего несколько квадратных миллиметров, на которой размещены схемы, реализующие все функции процессора. Кристалл-пластинка обычно помещается в пластмассовый или керамический плоский корпус и соединяется золотыми проводками с металлическими штырьками, чтобы его можно было присоединить к системной плате компьютера.
Вот как выглядит микропроцессор Pentium III:
Рис. 2.5. Микропроцессор Pentium III
В вычислительной системе может быть несколько параллельно работающих процессоров; такие системы называются многопроцессорными.
Память компьютера построена из двоичных запоминающих элементов битов, объединенных в группы по 8 битов, которые называются байтами. (Единицы измерения памяти совпадают с единицами измерения информации). Все байты пронумерованы. Номер байта называется его адресом.
Байты могут объединяться в ячейки, которые называются также словами. Для каждого компьютера характерна определенная длина слова два, четыре или восемь байтов. Это не исключает использования ячеек памяти другой длины (например, полуслово, двойное слово).
Как правило, в одном машинном слове может быть представлено либо одно целое число, либо одна команда. Однако, допускаются переменные форматы представления информации.
Разбиение памяти на слова для четырехбайтовых компьютеров представлено в таблице:
Байт 0 |
Байт 1 |
Байт 2 |
Байт 3 |
Байт 4 |
Байт 5 |
Байт 6 |
Байт 7 |
ПОЛУСЛОВО |
ПОЛУСЛОВО |
ПОЛУСЛОВО |
ПОЛУСЛОВО |
||||
СЛОВО |
СЛОВО |
||||||
ДВОЙНОЕ СЛОВО |
Широко используются и более крупные производные единицы объема памяти: Килобайт, Мегабайт, Гигабайт, а также, в последнее время, Терабайт и Петабайт.
Современные компьютеры имеют много разнообразных запоминающих устройств, которые сильно отличаются между собой по назначению, временным характеристикам, объёму хранимой информации и стоимости хранения одинакового объёма информации.
Различают два основных вида памяти внутреннюю и внешнюю.
В состав внутренней памяти входят оперативная память, кэш-память и специальная память.
· Оперативная память
Оперативная память (ОЗУ, англ. RAM, Random Access Memory память с произвольным доступом) это быстрое запоминающее устройство не очень большого объёма, непосредственно связанное с процессором и предназначенное для записи, считывания и хранения выполняемых программ и данных, обрабатываемых этими программами. |
Оперативная память используется только для временного хранения данных и программ, так как, когда машина выключается, все, что находилось в ОЗУ, пропадает. Доступ к элементам оперативной памяти прямой это означает, что каждый байт памяти имеет свой индивидуальный адрес.
Объем ОЗУ обычно составляет 4 - 64 Мбайта, а для эффективной работы современного программного обеспечения желательно иметь не менее 16 Мбайт ОЗУ. Обычно ОЗУ исполняется из интегральных микросхем памяти DRAM (Dynamic RAM динамическое ОЗУ). Микросхемы DRAM работают медленнее, чем другие разновидности памяти, но стоят дешевле.
Каждый информационный бит в DRAM запоминается в виде электрического заряда крохотного конденсатора, образованного в структуре полупроводникового кристалла. Из-за токов утечки такие конденсаторы быстро разряжаются, и их периодически (примерно каждые 2 миллисекунды) подзаряжают специальные устройства. Этот процесс называется регенерацией памяти (Refresh Memory).
Современные микросхемы имеют ёмкость 1-16 Мбит и более. Они устанавливаются в корпуса и собираются в модули памяти.
Наиболее распространены модули типа SIMM (Single In-Line Memory Module модуль памяти с однорядным расположением микросхем).
Рис. 2.6. SIMM. Модуль памяти c однорядным
расположением микросхем
В модуле SIMM элементы памяти собраны на маленькой печатной плате длиной около 10 см. Ёмкость таких модулей неодинаковая 256 Кбайт, 1, 2, 4, 8, 16, 32 и 64 Мбайта. Различные модули SIMM могут иметь разное число микросхем девять, три или одну, и разное число контактов 30 или 72.
Важная характеристика модулей памяти время доступа к данным, которое обычно составляет 60 80 наносекунд.
· Кэш-память
Кэш (англ. cache), или сверхоперативная память очень быстрое ЗУ небольшого объёма, которое используется при обмене данными между микропроцессором и оперативной памятью для компенсации разницы в скорости обработки информации процессором и несколько менее быстродействующей оперативной памятью. |
Кэш-памятью управляет специальное устройство контроллер, который, анализируя выполняемую программу, пытается предвидеть, какие данные и команды вероятнее всего понадобятся в ближайшее время процессору, и подкачивает их в кэш-память. При этом возможны как "попадания", так и "промахи". В случае попадания, то есть, если в кэш подкачаны нужные данные, извлечение их из памяти происходит без задержки. Если же требуемая информация в кэше отсутствует, то процессор считывает её непосредственно из оперативной памяти. Соотношение числа попаданий и промахов определяет эффективность кэширования.
Кэш-память реализуется на микросхемах статической памяти SRAM (Static RAM), более быстродействующих, дорогих и малоёмких, чем DRAM.
Современные микропроцессоры имеют встроенную кэш-память, так называемый кэш первого уровня размером 816 Кбайт. Кроме того, на системной плате компьютера может быть установлен кэш второго уровня ёмкостью от 64 Кбайт до 256 Кбайт и выше.
· Специальная память
К устройствам специальной памяти относятся постоянная память (ROM), перепрограммируемая постоянная память (Flash Memory), память CMOS RAM, питаемая от батарейки, видеопамять и некоторые другие виды памяти.
Постоянная память (ПЗУ, англ. ROM, Read Only Memory память только для чтения) энергонезависимая память, используется для хранения данных, которые никогда не потребуют изменения. Содержание памяти специальным образом “зашивается” в устройстве при его изготовлении для постоянного хранения. Из ПЗУ можно только читать. |
Перепрограммируемая постоянная память (Flash Memory) энергонезависимая память, допускающая многократную перезапись своего содержимого с дискеты. |
Прежде всего в постоянную память записывают программу управления работой самого процессора. В ПЗУ находятся программы управления дисплеем, клавиатурой, принтером, внешней памятью, программы запуска и остановки компьютера, тестирования устройств.
Важнейшая микросхема постоянной или Flash-памяти модуль BIOS.
BIOS (Basic Input/Output System базовая система ввода-вывода) совокупность программ, предназначенных для:
|
Роль BIOS двоякая: с одной стороны это неотъемлемый элемент аппаратуры (Hardware), а с другой строны важный модуль любой операционной системы (Software).
Разновидность постоянного ЗУ CMOS RAM.
CMOS RAM это память с невысоким быстродействием и минимальным энергопотреблением от батарейки. Используется для хранения информации о конфигурации и составе оборудования компьютера, а также о режимах его работы. |
Интегральные схемы BIOS и CMOS
Содержимое CMOS изменяется специальной программой Setup, находящейся в BIOS (англ. Set-up устанавливать, читается "сетап").
Для хранения графической информации используется видеопамять.
Видеопамять (VRAM) разновидность оперативного ЗУ, в котором хранятся закодированные изображения. Это ЗУ организовано так, что его содержимое доступно сразу двум устройствам процессору и дисплею. Поэтому изображение на экране меняется одновременно с обновлением видеоданных в памяти. |
Внешняя память (ВЗУ) предназначена для длительного хранения программ и данных, и целостность её содержимого не зависит от того, включен или выключен компьютер. В отличие от оперативной памяти, внешняя память не имеет прямой связи с процессором. Информация от ВЗУ к процессору и наоборот циркулирует примерно по следующей цепочке:
В состав внешней памяти компьютера входят:
Гибкий диск, дискета (англ. floppy disk) устройство для хранения небольших объёмов информации, представляющее собой гибкий пластиковый диск в защитной оболочке. Используется для переноса данных с одного компьютера на другой и для распространения программного обеспечения. |
Дискета состоит из круглой полимерной подложки, покрытой с обеих сторон магнитным окислом и помещенной в пластиковую упаковку, на внутреннюю поверхность которой нанесено очищающее покрытие. В упаковке сделаны с двух сторон радиальные прорези, через которые головки считывания/записи накопителя получают доступ к диску.
Способ записи двоичной информации на магнитной среде называется магнитным кодированием. Он заключается в том, что магнитные домены в среде выстраиваются вдоль дорожек в направлении приложенного магнитного поля своими северными и южными полюсами. Обычно устанавливается однозначное соответствие между двоичной информацией и ориентацией магнитных доменов.
Информация записывается по концентрическим дорожкам (трекам), которые делятся на секторы. Количество дорожек и секторов зависит от типа и формата дискеты. Сектор хранит минимальную порцию информации, которая может быть записана на диск или считана. Ёмкость сектора постоянна и составляет 512 байтов.
Рис. 2.7. Поверхность
магнитного диска
На дискете можно хранить от 360 Килобайт до 2,88 Мегабайт информации.
В настоящее время наибольшее распространение получили дискеты со следующими характеристиками: диаметр 3,5 дюйма (89 мм), ёмкость 1,44 Мбайт, число дорожек 80, количество секторов на дорожках 18.
Дискета устанавливается в накопитель на гибких магнитных дисках (англ. floppy-disk drive), автоматически в нем фиксируется, после чего механизм накопителя раскручивается до частоты вращения 360 мин1. В накопителе вращается сама дискета, магнитные головки остаются неподвижными. Дискета вращается только при обращении к ней.
Накопитель связан с процессором через контроллер гибких дисков.
Если гибкие диски это средство переноса данных между компьютерами, то жесткий диск информационный склад компьютера.
Накопитель на жёстких магнитных дисках (англ. HDD Hard Disk Drive) или винчестерский накопитель это наиболее массовое запоминающее устройство большой ёмкости, в котором носителями информации являются круглые алюминиевые пластины платтеры, обе поверхности которых покрыты слоем магнитного материала. Используется для постоянного хранения информации программ и данных. |
Рис. 2.8. Винчестерский накопитель
со снятой крышкой корпуса
Как и у дискеты, рабочие поверхности платтеров разделены на кольцевые концентрические дорожки, а дорожки на секторы. Головки считывания-записи вместе с их несущей конструкцией и дисками заключены в герметически закрытый корпус, называемый модулем данных. При установке модуля данных на дисковод он автоматически соединяется с системой, подкачивающей очищенный охлажденный воздух.
Поверхность платтера имеет магнитное покрытие толщиной всего лишь в 1,1 мкм, а также слой смазки для предохранения головки от повреждения при опускании и подъёме на ходу. При вращении платтера над ним образуется воздушный слой, который обеспечивает воздушную подушку для зависания головки на высоте 0,5 мкм над поверхностью диска.
Винчестерские накопители имеют очень большую ёмкость: от сотен Мегабайт до десятков Гбайт. У современных моделей скорость вращения шпинделя достигает 7200 оборотов в минуту, среднее время поиска данных 10 мс, максимальная скорость передачи данных до 40 Мбайт/с.
В отличие от дискеты, винчестерский диск вращается непрерывно.
Винчестерский накопитель связан с процессором через контроллер жесткого диска.
Все современные накопители снабжаются встроенным кэшем (64 Кбайт и более), который существенно повышает их производительность.
CD-ROM состоит из прозрачной полимерной основы диаметром 12 см и толщиной 1,2 мм. Одна сторона покрыта тонким алюминиевым слоем, защищенным от повреждений слоем лака. Двоичная информация представляется последовательным чередованием углублений (pits ямки) и основного слоя (land земля).
На одном дюйме (2,54 см) по радиусу диска размещается 16 тысяч дорожек с информацией. Для сравнения на дюйме по радиусу дискеты всего лишь 96 дорожек. Ёмкость CD до 780 Мбайт. Информация заносится на диск на заводе и не может быть изменена.
Достоинства CD-ROM:
В отличие от магнитных дисков, компакт-диски имеют не множество кольцевых дорожек, а одну спиральную, как у грампластинок. В связи с этим, угловая скорость вращения диска не постоянна. Она линейно уменьшается в процессе продвижения читающей магнитной головки к центру диска.
Для работы с CD ROM нужно подключить к компьютеру накопитель CD-ROM (CD-ROM Drive), в котором компакт-диски сменяются как в обычном проигрывателе. Накопители CD-ROM часто называют проигрывателями CD-ROM или приводами CD-ROM.
Что такое накопитель CD-ROM с технической точки зрения?
Рис. 2.9. Накопитель CD-ROM
Участки CD, на которых записаны символы "0" и "1", отличаются коэффициентом отражения лазерного луча, посылаемого накопителем CD-ROM. Эти отличия улавливаются фотоэлементом, и общий сигнал преобразуется в соответствующую последовательность нулей и единиц.
Многие накопители CD-ROM способны воспроизводить обычные аудио-CD. Это позволяет пользователю, работающему за компьютером, слушать музыку в фоновом режиме.
Со временем на смену CD-ROM могут прийти цифровые видеодиски DVD(читается "ди-ви-ди"). Эти диски имеют тот же размер, что и обычные CD, но вмещают 4,7 Гбайт данных, т.е. по объёму заменяют семь стандартных дисков CD-ROM. В скором времени ёмкость дисков DVD возрастет до 17 Гбайт. На таких дисках будут выпускаться полноэкранные видеофильмы отличного качества, программы-тренажёры, мультимедийные игры и многое другое.
Главный недостаток накопителей CD-ROM по сравнению с винчестерскими накопителями невозможность перезаписи информации.
Рис.2.10. Накопитель CD-MO
· Накопитель на магнито-оптических компакт-дисках СD-MO (Compact Disk-Magneto Optical). Диски СD-MO можно многократно использовать для записи, но они не читаются на традиционных дисководах CD-ROM. Ёмкость от 128 Мбайт до 2,6 Гбайт.
· Записывающий накопитель CD-R (Compact Disk Recordable) способен, наряду с прочтением обычных компакт-дисков, записывать информацию на специальные оптические диски. Ёмкость 650 Мбайт.
· Накопитель WARM (Write And Read Many times), позволяет производить многократную запись и считывание.
· Накопитель WORM (Write Once, Read Many times), позволяет производить однократную запись и многократное считывание.
Стример (англ. tape streamer) устройство для резервного копирования больших объёмов информации. В качестве носителя здесь применяются кассеты с магнитной лентой ёмкостью 1 - 2 Гбайта и больше. |
Рис. 2.11. Накопитель на сменных дисках
Стримеры позволяют записать на небольшую кассету с магнитной лентой огромное количество информации. Встроенные в стример средства аппаратного сжатия позволяют автоматически уплотнять информацию перед её записью и восстанавливать после считывания, что увеличивает объём сохраняемой информации.
Недостатком стримеров является их сравнительно низкая скорость записи, поиска и считывания информации.
В последнее время всё шире используются накопители на сменных дисках, которые позволяют не только увеличивать объём хранимой информации, но и переносить информацию между компьютерами. Объём сменных дисков от сотен Мбайт до нескольких Гигабайт.
Аудиоадаптер (Sound Blaster или звуковая плата) это специальная электронная плата, которая позволяет записывать звук, воспроизводить его и создавать программными средствами с помощью микрофона, наушников, динамиков, встроенного синтезатора и другого оборудования. |
Аудиоадаптер содержит в себе два преобразователя информации:
Профессиональные звуковые платы позволяют выполнять сложную обработку звука, обеспечивают стереозвучание, имеют собственное ПЗУ с хранящимися в нём сотнями тембров звучаний различных музыкальных инструментов.
Звуковые файлы обычно имеют очень большие размеры. Так, трёхминутный звуковой файл со стереозвучанием занимает примерно 30 Мбайт памяти. Поэтому платы Sound Blaster, помимо своих основных функций, обеспечивают автоматическое сжатие файлов.
Область применения звуковых плат компьютерные игры, обучающие программные системы, рекламные презентации, "голосовая почта" (voice mail) между компьютерами, озвучивание различных процессов, происходящих в компьютерном оборудовании, таких, например, как отсутствие бумаги в принтере и т.п.
Видеоадаптер это электронная плата, которая обрабатывает видеоданные (текст и графику) и управляет работой дисплея. Содержит видеопамять, регистры ввода вывода и модуль BIOS. Посылает в дисплей сигналы управления яркостью лучей и сигналы развертки изображения. |
Наиболее распространенный видеоадаптер на сегодняшний день адаптер SVGA (Super Video Graphics Array супервидеографический массив), который может отображать на экране дисплея 1280х1024 пикселей при 256 цветах и 1024х768 пикселей при 16 миллионах цветов.
С увеличением числа приложений, использующих сложную графику и видео, наряду с традиционными видеоадаптерами широко используются разнообразные устройства компьютерной обработки видеосигналов:
Рис. 2.12. Графический акселератор
· Графические акселераторы (ускорители) специализированные графические сопроцессоры, увеличивающие эффективность видеосистемы. Их применение освобождает центральный процессор от большого объёма операций с видеоданными, так как акселераторы самостоятельно вычисляют, какие пиксели отображать на экране и каковы их цвета.
· Фрейм-грабберы, которые позволяют отображать на экране компьютера видеосигнал от видеомагнитофона, камеры, лазерного проигрывателя и т. п., с тем, чтобы захватить нужный кадр в память и впоследствии сохранить его в виде файла.
· TV-тюнеры видеоплаты, превращающие компьютер в телевизор. TV-тюнер позволяет выбрать любую нужную телевизионную программу и отображать ее на экране в масштабируемом окне. Таким образом можно следить за ходом передачи, не прекращая работу.
Клавиатура служит для ввода информации в компьютер и подачи управляющих сигналов. Она содержит стандартный набор алфавитно-цифровых клавиш и некоторые дополнительные клавиши управляющие и функциональные, клавиши управления курсором, а также малую цифровую клавиатуру. |
Курсор светящийся символ на экране монитора, указывающий позицию, на которой будет отображаться следующий вводимый с клавиатуры знак.
Все символы, набираемые на клавиатуре, немедленно отображаются на мониторе в позиции курсора.
Наиболее распространена сегодня 101-клавишная клавиатура c раскладкой клавиш QWERTY (читается “кверти”), названная так по клавишам, расположенным в верхнем левом ряду алфавитно-цифровой части клавиатуры:
Рис. 2.13. Клавиатура компьютера
Такая клавиатура имеет 12 функциональных клавиш, расположенных вдоль верхнего края. Нажатие функциональной клавиши приводит к посылке в компьютер не одного символа, а целой совокупности символов.
Функциональные клавиши могут программироваться пользователем. Например, во многих программах для получения помощи (подсказки) задействована клавиша F1, а для выхода из программы клавиша F10.
Управляющие клавиши имеют следующее назначение:
Малая цифровая клавиатура используется в двух режимах ввода чисел и управления курсором. Переключение этих режимов осуществляется клавишей Num Lock.
Клавиатура содержит встроенный микроконтроллер (местное устройство управления), который выполняет следующие функции:
Клавиатура имеет встроенный буфер промежуточную память малого размера, куда помещаются введённые символы. В случае переполнения буфера нажатие клавиши будет сопровождаться звуковым сигналом это означает, что символ не введён (отвергнут).
Работу клавиатуры поддерживают специальные программы, "зашитые" в BIOS, а также драйвер клавиатуры, который обеспечивает возможность ввода русских букв, управление скоростью работы клавиатуры и др.
Видеосистема компьютера состоит из трех компонент:
Видеоадаптер посылает в монитор сигналы управления яркостью лучей и синхросигналы строчной и кадровой развёрток. Монитор преобразует эти сигналы в зрительные образы. А программные средства обрабатывают видеоизображения выполняют кодирование и декодирование сигналов, координатные преобразования, сжатие изображений и др.
Монитор устройство визуального отображения информации (в виде текста, таблиц, рисунков, чертежей и др.). |
Рис. 2.14. Монитор
Подавляющее большинство мониторов сконструированы на базе электронно-лучевой трубки (ЭЛТ), и принцип их работы аналогичен принципу работы телевизора. Мониторы бывают алфавитно-цифровые и графические, монохромные и цветного изображения. Современные компьютеры комплектуются, как правило, цветными графическими мониторами.
Основной элемент дисплея электронно-лучевая трубка.
Её передняя, обращенная к зрителю часть с внутренней стороны покрыта люминофором специальным веществом, способным излучать свет при попадании на него быстрых электронов.
Рис. 2.15. Схема электронно-лучевой трубки
Люминофор наносится в виде наборов точек трёх основных цветов красного, зелёного и синего. Эти цвета называют основными, потому что их сочетаниями (в различных пропорциях) можно представить любой цвет спектра.
Рис. 2.16. Пиксельные триады
Наборы точек люминофора располагаются по треугольным триадам. Триада образует пиксел точку, из которых формируется изображение (англ. pixel picture element, элемент картинки).
Расстояние между центрами пикселов называется точечным шагом монитора. Это расстояние существенно влияет на чёткость изображения. Чем меньше шаг, тем выше чёткость. Обычно в цветных мониторах шаг составляет 0,28 мм. При таком шаге глаз человека воспринимает точки триады как одну точку "сложного" цвета.
На противоположной стороне трубки расположены три (по количеству основных цветов) электронные пушки. Все три пушки "нацелены" на один и тот же пиксел, но каждая из них излучает поток электронов в сторону "своей" точки люминофора.
Чтобы электроны беспрепятственно достигали экрана, из трубки откачивается воздух, а между пушками и экраном создаётся высокое электрическое напряжение, ускоряющее электроны.
Перед экраном на пути электронов ставится маска тонкая металлическая пластина с большим количеством отверстий, расположенных напротив точек люминофора. Маска обеспечивает попадание электронных лучей только в точки люминофора соответствующего цвета.
Величиной электронного тока пушек и, следовательно, яркостью свечения пикселов, управляет сигнал, поступающий с видеоадаптера.
Рис. 2.17. Ход электронного пучка по экрану
На ту часть колбы, где расположены электронные пушки, надевается отклоняющая система монитора, которая заставляет электронный пучок пробегать поочерёдно все пикселы строчку за строчкой от верхней до нижней, затем возвращаться в начало верхней строки и т.д.
Количество отображённых строк в секунду называется строчной частотой развертки. А частота, с которой меняются кадры изображения, называется кадровой частотой развёртки. Последняя не должна быть ниже 60 Гц, иначе изображение будет мерцать.
Наряду с традиционными ЭЛТ-мониторами все шире используются плоские жидкокристаллические (ЖК) мониторы.
Жидкие кристаллы это особое состояние некоторых органических веществ, в котором они обладают текучестью и свойством образовывать пространственные структуры, подобные кристаллическим. Жидкие кристаллы могут изменять свою структуру и светооптические свойства под действием электрического напряжения. Меняя с помощью электрического поля ориентацию групп кристаллов и используя введённые в жидкокристаллический раствор вещества, способные излучать свет под воздействием электрического поля, можно создать высококачественные изображения, передающие более 15 миллионов цветовых оттенков.
Рис. 2.18. Жидкокристалический
монитор
Большинство ЖК-мониторов использует тонкую плёнку из жидких кристаллов, помещённую между двумя стеклянными пластинами. Заряды передаются через так называемую пассивную матрицу сетку невидимых нитей, горизонтальных и вертикальных, создавая в месте пересечения нитей точку изображения (несколько размытого из-за того, что заряды проникают в соседние области жидкости).
Активные матрицы вместо нитей используют прозрачный экран из транзисторов и обеспечивают яркое, практически не имеющее искажений изображение. Панель при этом разделена на 308160 (642х480) независимых ячеек, каждая из которых состоит из четырех частей (для трёх основных цветов и одна резервная). Таким образом, экран имеет почти 1,25 млн точек, каждая из которых управляется собственным транзистором.
По компактности такие мониторы не знают себе равных. Они занимают в 2 3 раза меньше места, чем мониторы с ЭЛТ и во столько же раз легче; потребляют гораздо меньше электроэнергии и не излучают электромагнитных волн, воздействующих на здоровье людей.
Рис. 2.19. Сенсорный экран
Разновидность монитора сенсорный экран. Здесь общение с компьютером осуществляется путём прикосновения пальцем к определённому месту чувствительного экрана. Этим выбирается необходимый режим из меню, показанного на экране монитора.
Меню это выведенный на экран монитора список различных вариантов работы компьютера, по которому можно сделать конкретный выбор.
Сенсорными экранами оборудуют рабочие места операторов и диспетчеров, их используют в информационно-справочных системах и т.д.
Принтер печатающее устройство. Осуществляет вывод из компьютера закодированной информации в виде печатных копий текста или графики. |
Существуют тысячи наименований принтеров. Но основных видов принтеров три: матричные, лазерные и струйные.
Рис. 2.20. Матричный символ
· Матричные принтеры используют комбинации маленьких штырьков, которые бьют по красящей ленте, благодаря чему на бумаге остаётся отпечаток символа. Каждый символ, печатаемый на принтере, формируется из набора 9, 18 или 24 игл, сформированных в виде вертикальной колонки. Недостатками этих недорогих принтеров являются их шумная работа и невысокое качество печати, приемлемое, в основном, для домашних целей.
· Лазерные принтеры работают примерно так же, как ксероксы. Компьютер формирует в своей памяти "образ" страницы текста и передает его принтеру. Информация о странице проецируется с помощью лазерного луча на вращающийся барабан со светочувствительным покрытием, меняющим электрические свойства в зависимости от освещённости.
Рис. 2.21. Лазерный принтер
После засветки на барабан, находящийся под электрическим напряжением, наносится красящий порошок тонер, частицы которого налипают на засвеченные участки поверхности барабана. Принтер с помощью специального горячего валика протягивает бумагу под барабаном; тонер переносится на бумагу и "вплавляется" в неё, оставляя стойкое высококачественное изображение. Цветные лазерные принтеры пока очень дороги.
· Струйные принтеры генерируют символы в виде последовательности чернильных точек. Печатающая головка принтера имеет крошечные сопла, через которые на страницу выбрызгиваются быстросохнущие чернила. Эти принтеры требовательны к качеству бумаги. Цветные струйные принтеры создают цвета, комбинируя чернила четырех основных цветов ярко-голубого, пурпурного, желтого и черного.
Принтер связан с компьютером посредством кабеля принтера, один конец которого вставляется своим разъёмом в гнездо принтера, а другой в порт принтера компьютера. Порт это разъём, через который можно соединить процессор компьютера с внешним устройством.
Каждый принтер обязательно имеет свой драйвер программу, которая способна переводить (транслировать) стандартные команды печати компьютера в специальные команды, требующиеся для каждого принтера.
Плоттер (графопостроитель) устройство, которое чертит графики, рисунки или диаграммы под управлением компьютера. |
Рис. 2.22. Струйный плоттер
Плоттеры используются для получения сложных конструкторских чертежей, архитектурных планов, географических и метеорологических карт, деловых схем. Плоттеры рисуют изображения с помощью пера.
Роликовые плоттеры прокручивают бумагу под пером, а планшетные плоттеры перемещают перо через всю поверхность горизонтально лежащей бумаги.
Плоттеру, так же, как и принтеру, обязательно нужна специальная программа драйвер, позволяющая прикладным программам передавать ему инструкции: поднять и опустить перо, провести линию заданной толщины и т.п.
Сканер устройство для ввода в компьютер графических изображений. Создает оцифрованное изображение документа и помещает его в память компьютера. |
Рис. 2.23 Планшетный сканер
Если принтеры выводят информацию из компьютера, то сканеры, наоборот, переносят информацию с бумажных документов в память компьютера. Существуют ручные сканеры, которые прокатывают по поверхности документа рукой, и планшетные сканеры, по внешнему виду напоминающие копировальные машины.
Если при помощи сканера вводится текст, компьютер воспринимает его как картинку, а не как последовательность символов. Для преобразования такого графического текста в обычный символьный формат используют программы оптического распознавания образов.
Модем устройство для передачи компьютерных данных на большие расстояния по телефонным линиям связи. |
Цифровые сигналы, вырабатываемые компьютером, нельзя напрямую передавать по телефонной сети, потому что она предназначена для передачи человеческой речи непрерывных сигналов звуковой частоты.
Модем обеспечивает преобразование цифровых сигналов компьютера в переменный ток частоты звукового диапазона этот процесс называется модуляцией, а также обратное преобразование, которое называется демодуляцией. Отсюда название устройства: модем модулятор/демодулятор.
Рис. 2.24. Схема реализации модемной связи
Для осуществления связи один модем вызывает другой по номеру телефона, а тот отвечает на вызов. Затем модемы посылают друг другу сигналы, согласуя подходящий им обоим режим связи. После этого передающий модем начинает посылать модулированные данные с согласованными скоростью (количеством бит в секунду) и форматом. Модем на другом конце преобразует полученную информацию в цифровой вид и передает её своему компьютеру. Закончив сеанс связи, модем отключается от линии.
Рис. 2.25 Внешний модем
Управление модемом осуществляется с помощью специального коммутационного программного обеспечения.
Модемы бывают внешние, выполненные в виде отдельного устройства, и внутренние, представляющие собой электронную плату, устанавливаемую внутри компьютера. Почти все модемы поддерживают и функции факсов.
Факс это устройство факсимильной передачи изображения по телефонной сети. Название "факс" произошло от слова "факсимиле" (лат. fac simile сделай подобное), означающее точное воспроизведение графического оригинала (подписи, документа и т.д.) средствами печати.
Модем, который может передавать и получать данные как факс, называется факс-модемом.
Манипуляторы (мышь, джойстик и др.) это специальные устройства, которые используются для управления курсором.
Мышь имеет вид небольшой коробки, полностью умещающейся на ладони. Мышь связана с компьютером кабелем через специальный блок адаптер, и её движения преобразуются в соответствующие перемещения курсора по экрану дисплея. В верхней части устройства расположены управляющие кнопки (обычно их три), позволяющие задавать начало и конец движения, осуществлять выбор меню и т.п.
Джойстик обычно это стержень-ручка, отклонение которой от вертикального положения приводит к передвижению курсора в соответствующем направлении по экрану монитора. Часто применяется в компьютерных играх. В некоторых моделях в джойстик монтируется датчик давления. В этом случае, чем сильнее пользователь нажимает на ручку, тем быстрее движется курсор по экрану дисплея.
Трекбол небольшая коробка с шариком, встроенным в верхнюю часть корпуса. Пользователь рукой вращает шарик и перемещает, соответственно, курсор. В отличие от мыши, трекбол не требует свободного пространства около компьютера, его можно встроить в корпус машины.
Дигитайзер устройство для преобразования готовых изображений (чертежей, карт) в цифровую форму. Представляет собой плоскую панель планшет, располагаемую на столе, и специальный инструмент перо, с помощью которого указывается позиция на планшете. При перемещении пера по планшету фиксируются его координаты в близко расположенных точках, которые затем преобразуются в компьютере в требуемые единицы измерения.
Рассмотрим устройство компьютера на примере самой распространенной компьютерной системы персонального компьютера.
Персональным компьютером (ПК) называют сравнительно недорогой универсальный микрокомпьютер, рассчитанный на одного пользователя.
Персональные компьютеры обычно проектируются на основе принципа открытой архитектуры.
Принцип открытой архитектуры заключается в следующем:
|
Упрощённая блок-схема, отражающая основные функциональные компоненты компьютерной системы в их взаимосвязи, изображена на рисунке 2.26.
Рис. 2.26. Общая структура персонального компьютера с подсоединенными периферийными устройствами
Для того, чтобы соединить друг с другом различные устройства компьютера, они должны иметь одинаковый интерфейс (англ. interface от inter между, и face лицо).
Интерфейс это средство сопряжения двух устройств, в котором все физические и логические параметры согласуются между собой. |
Если интерфейс является общепринятым, например, утверждённым на уровне международных соглашений, то он называется стандартным.
Каждый из функциональных элементов (память, монитор или другое устройство) связан с шиной определённого типа адресной, управляющей или шиной данных.
Для согласования интерфейсов периферийные устройства подключаются к шине не напрямую, а через свои контроллеры (адаптеры) и порты примерно по такой схеме:
Контроллеры и адаптеры представляют собой наборы электронных цепей, которыми снабжаются устройства компьютера с целью совместимости их интерфейсов. Контроллеры, кроме этого, осуществляют непосредственное управление периферийными устройствами по запросам микропроцессора.
Порты устройств представляют собой некие электронные схемы, содержащие один или несколько регистров ввода-вывода и позволяющие подключать периферийные устройства компьютера к внешним шинам микропроцессора. |
Портами также называют устройства стандартного интерфейса: последовательный, параллельный и игровой порты (или интерфейсы).
Последовательный порт обменивается данными с процессором побайтно, а с внешними устройствами побитно. Параллельный порт получает и посылает данные побайтно. |
К последовательному порту обычно подсоединяют медленно действующие или достаточно удалённые устройства, такие, как мышь и модем. К параллельному порту подсоединяют более "быстрые" устройства принтер и сканер. Через игровой порт подсоединяется джойстик. Клавиатура и монитор подключаются к своим специализированным портам, которые представляют собой просто разъёмы.
Основные электронные компоненты, определяющие архитектуру процессора, размещаются на основной плате компьютера, которая называется системной или материнской (MotherBoard). А контроллеры и адаптеры дополнительных устройств, либо сами эти устройства, выполняются в виде плат расширения (DаughterBoard дочерняя плата) и подключаются к шине с помощью разъёмов расширения, называемых также слотами расширения (англ. slot щель, паз).
Современный персональный компьютер состоит из нескольких основных конструктивных компонент:
Рис. 2.27. Виды корпусов
системного блока
В системном блоке размещаются:
Корпус системного блока может иметь горизонтальную (DeskTop) или вертикальную (Tower башня) компоновку.
Типичный системный блок со снятой крышкой корпуса на рис. 2.28.
|
1 Системная плата. |
Вместо термина "системный блок" иногда употребляют термин "платформа".
Системная плата является основной в системном блоке. Она содержит компоненты, определяющие архитектуру компьютера:
Системные платы исполняются на основе наборов микросхем, которые называются чипсетами (ChipSets). Часто на системных платах устанавливают и контроллеры дисковых накопителей, видеоадаптер, контроллеры портов и др.
В гнёзда расширения системной платы устанавливаются платы таких периферийных устройств, как модем, сетевая плата, видеоплата и т.п.
|
1 Разъём под центральный процессор; |
Назовём задачи, которые трудно или невозможно решить без организации информационной связи между различными компьютерами:
Есть три основных способа организации межкомпьютерной связи:
Часто при организации связи между двумя компьютерами за одним компьютером закрепляется роль поставщика ресурсов (программ, данных и т.д.), а за другим роль пользователя этих ресурсов. В этом случае первый компьютер называется сервером, а второй клиентом или рабочей станцией. Работать можно только на компьютере-клиенте под управлением специального программного обеспечения.
Сервер (англ. serve обслуживать) это высокопроизводительный компьютер с большим объёмом внешней памяти, который обеспечивает обслуживание других компьютеров путем управления распределением дорогостоящих ресурсов совместного пользования (программ, данных и периферийного оборудования). |
Клиент (иначе, рабочая станция) любой компьютер, имеющий доступ к услугам сервера. |
Сетевой сервер
HP LD PRO
Например, сервером может быть мощный компьютер, на котором размещается центральная база данных, а клиентом обычный компьютер, программы которого по мере необходимости запрашивают данные с сервера. В некоторых случаях компьютер может быть одновременно и клиентом, и сервером. Это значит, что он может предоставлять свои ресурсы и хранимые данные другим компьютерам и одновременно использовать их ресурсы и данные.
Клиентом также называют прикладную программу, которая от имени пользователя получает услуги сервера. Соответственно, программное обеспечение, которое позволяет компьютеру предоставлять услуги другому компьютеру, называют сервером так же, как и сам компьютер.
Для преодоления несовместимости интерфейсов отдельных компьютеров вырабатывают специальные стандарты, называемые протоколами коммуникации.
Протокол коммуникации это согласованный набор конкретных правил обмена информацией между разными устройствами передачи данных. Имеются протоколы для скорости передачи, форматов данных, контроля ошибок и др. |
Для работы с сетью необходимо наличие специального сетевого программного обеспечения, которое обеспечивает передачу данных в соответствии с заданным протоколом.
Протоколы коммуникации предписывают разбить весь объём передаваемых данных на пакеты отдельные блоки фиксированного размера. Пакеты нумеруются, чтобы их затем можно было собрать в правильной последовательности. К данным, содержащимся в пакете, добавляется дополнительная информация примерно такого формата:
Адрес получателя |
Адрес отправителя |
Длина |
Данные |
Поле контрольной суммы |
Контрольная сумма данных пакета содержит информацию, необходимую для контроля ошибок. Первый раз она вычисляется передающим компьютером. После того, как пакет будет передан, контрольная сумма повторно вычисляется принимающим компьютером. Если значения не совпадают, это означает, что данные пакета были повреждены при передаче. Такой пакет отбрасывается, и автоматически направляется запрос повторно передать пакет.
При установлении связи устройства обмениваются сигналами для согласования коммуникационных каналов и протоколов. Этот процесс называется подтверждением установления связи (англ. HandShake рукопожатие).
Компьютерная сеть (англ. Computer NetWork, от net сеть, и work работа) это система обмена информацией между компьютерами. Представляет собой совокупность трех компонент:
Пользователи компьютерной сети получают возможность совместно использовать её программные, технические, информационные и организационные ресурсы. |
Компьютерная сеть представляет собой совокупность узлов (компьютеров, рабочих станций и др.) и соединяющих их ветвей.
Ветвь сети это путь, соединяющий два смежных узла.
Узлы сети бывают трёх типов:
Компьютеры могут объединяться в сеть разными способами.
Способ соединения компьютеров в сеть называется её топологией. |
Наиболее распространенные виды топологий сетей:
Линейная сеть. Содержит только два оконечных узла, любое число промежуточных узлов и имеет только один путь между любыми двумя узлами.
Кольцевая сеть. Сеть, в которой к каждому узлу присоединены две и только две ветви.
Древовидная сеть. Сеть, которая содержит более двух оконечных узлов и по крайней мере два промежуточных узла, и в которой между двумя узлами имеется только один путь.
Звездообразная сеть. Сеть, в которой имеется только один промежуточный узел.
Ячеистая сеть. Сеть, которая содержит по крайней мере два узла, имеющих два или более пути между ними.
Полносвязанная сеть. Сеть, в которой имеется ветвь между любыми двумя узлами. Важнейшая характеристика компьютерной сети её архитектура.
Архитектура сети это реализованная структура сети передачи данных, определяющая её топологию, состав устройств и правила их взаимодействия в сети. В рамках архитектуры сети рассматриваются вопросы кодирования информации, её адресации и передачи, управления потоком сообщений, контроля ошибок и анализа работы сети в аварийных ситуациях и при ухудшении характеристик. |
Наиболее распространённые архитектуры:
Для этого используется специальное оборудование:
Рис. 2.30. Сетевой интерфейсный
адаптер
По степени географического распространения сети делятся на локальные, городские, корпоративные, глобальные и др.
Локальная сеть (ЛВС или LAN Local Area NetWork) сеть, связывающая ряд компьютеров в зоне, ограниченной пределами одной комнаты, здания или предприятия. |
Небольшая офисная локальная сеть
Глобальная сеть (ГВС или WAN World Area NetWork) сеть, соединяющая компьютеры, удалённые географически на большие расстояния друг от друга. Отличается от локальной сети более протяженными коммуникациями (спутниковыми, кабельными и др.). Глобальная сеть объединяет локальные сети. |
Глобальная сеть
Городская сеть (MAN Metropolitan Area NetWork) сеть, которая обслуживает информационные потребности большого города. |
Для соединения локальных сетей используются следующие устройства, которые различаются между собой по назначению и возможностям:
Мост (англ. Bridge) связывает две локальные сети. Передаёт данные между сетями в пакетном виде, не производя в них никаких изменений. Ниже на рисунке показаны три локальные сети, соединённые двумя мостами.
Соединение локальных сетей посредством мостов
Здесь мосты создали расширенную сеть, которая обеспечивает своим пользователям доступ к прежде недоступным ресурсам. Кроме этого, мосты могут фильтровать пакеты, охраняя всю сеть от локальных потоков данных и пропуская наружу только те данные, которые предназначены для других сегментов сети.
Маршрутизатор (англ. Router) объединяет сети с общим протоколом более эффективно, чем мост. Он позволяет, например, расщеплять большие сообщения на более мелкие куски, обеспечивая тем самым взаимодействие локальных сетей с разным размером пакета.
Маршрутизатор может пересылать пакеты на конкретный адрес (мосты только отфильтровывают ненужные пакеты), выбирать лучший путь для прохождения пакета и многое другое. Чем сложней и больше сеть, тем больше выгода от использования маршрутизаторов.
Мостовой маршрутизатор (англ. Brouter) это гибрид моста и маршрутизатора, который сначала пытается выполнить маршрутизацию, где это только возможно, а затем, в случае неудачи, переходит в режим моста.
Шлюз (англ. GateWay), в отличие от моста, применяется в случаях, когда соединяемые сети имеют различные сетевые протоколы. Поступившее в шлюз сообщение от одной сети преобразуется в другое сообщение, соответствующее требованиям следующей сети. Таким образом, шлюзы не просто соединяют сети, а позволяют им работать как единая сеть. C помощью шлюзов также локальные сети подсоединяются к мэйнфреймам универсальным мощным компьютерам.
Беспроводные сети используются там, где прокладка кабелей затруднена, нецелесообразна или просто невозможна. Например, в исторических зданиях, промышленных помещениях с металлическим или железобетонным полом, в офисах, полученных в краткосрочную аренду, на складах, выставках, конференциях и т.п. [48]
Топология "Все-Со-Всеми"
В этих случаях сеть реализуется при помощи сетевых радио-адаптеров, снабжённых всенаправленными антеннами и использующих в качестве среды передачи информации радиоволны. Такая сеть реализуется топологией “Все-Со-Всеми” и работоспособна при дальности 50200 м.
Для связи между беспроводной и кабельной частями сети используется специальное устройство, называемое точкой входа (или радиомостом). Можно использовать и обычный компьютер, в котором установлены два сетевых адаптера беспроводной и кабельный.
Топология "точка-точка"
Другой важной областью применения беспроводных сетей является организация связи между удалёнными сегментами локальных сетей при отсутствии инфраструктуры передачи данных (кабельных сетей общего доступа, высококачественных телефонных линий и др.), что типично для нашей страны. В этом случае для наведения беспроводных мостов между двумя удалёнными сегментами используются радиомосты с антенной направленного типа.
Топология типа "звезда"
Если в сеть нужно объединить несколько сегментов, то используется топология типа “звезда”. При этом в центральном узле устанавливается всенаправленная антенна, а удалённых узлах направленные. Сети звездообразной топологии могут образовывать сети разнообразной конфигурации.
Сетевая магистраль с беспроводным доступом позволяет отказаться от использования медленных модемов.
Интернет (англ. Internet между сетей) гигантская всемирная компьютерная сеть, объединяющая десятки тысяч сетей всего мира. Её назначение обеспечить любому желающему постоянный доступ к любой информации. Интернет предлагает практически неограниченные информационные ресурсы, полезные сведения, учёбу, развлечения, возможность общения с компетентными людьми, услуги удалённого доступа, передачи файлов, электронной почты и многое другое. Интернет обеспечивает принципиально новый способ общения людей, не имеющий аналогов в мире. |
Благодаря сети стал доступен (бесплатно или за умеренную плату) огромный объём информации. Так, пользователь в любой стране может связаться с людьми, разделяющими его интересы, или получить ценные сведения в электронных библиотеках, даже если они находятся на другом конце света.
Нужная информация окажется в его компьютере за считанные секунды, пройдя путь по длинной цепочке промежуточных компьютеров, по кабелям и по радио, через горы и моря, по дну океана и через спутник.
Интернет финансируется правительствами, научными и образовательными учреждениями, коммерческими структурами и миллионами частных лиц во всех частях света, но никто конкретно не является её владельцем. Управляет сетью “Совет по архитектуре Интернет”, формируемый из приглашённых добровольцев.
Сеть была создана в 1984 году, и сейчас ею пользуются примерно сорок миллионов человек. Интернет всё время изменяется, поскольку имеет много квалифицированных пользователей, которые пишут программы для себя, а затем распространяют их среди желающих. Постоянно появляются новые серверы, а существующие обновляют свой “репертуар”. Стремительно растут информационные потоки.
Как можно связаться с Интернет? Самый распространенный и недорогой способ посредством модема и телефонной линии. При этом используются три типа подключения, отличающиеся друг от друга по объёму услуг и цене:
При работе в сеансном режиме доступ к Интернет обычно покупается у провайдеров (англ. provide предоставлять, обеспечивать) фирм, предоставляющих доступ к некоторой части Интернет и поставляющих её пользователям разнообразные услуги.
Отдельные участки Интернет представляют собой сети различной архитектуры, которые связываются между собой с помощью маршрутизаторов. Передаваемые данные разбиваются на небольшие порции, называемые пакетами. Каждый пакет перемещается по сети независимо от других пакетов.
Сети в Интернет неограниченно коммутируются (т.е. связываются) друг с другом, потому что все компьютеры, участвующие в передаче данных, используют единый протокол коммуникации TCP/IP (читается “ти-си-пи/ай-пи”).
На самом деле протокол TCP/IP это два разных протокола, определяющих различные аспекты передачи данных в сети:
Схема передачи информации по протоколу TCP/IP такова: протокол ТСР разбивает информацию на пакеты и нумерует все пакеты; далее с помощью протокола IP все пакеты передаются получателю, где с помощью протокола ТСР проверяется, все ли пакеты получены; после получения всех пакетов протокол ТСР располагает их в нужном порядке и собирает в единое целое.
Каким образом пакет находит своего получателя?
Каждый компьютер, подключенный к сети Интернет имеет два равноценных уникальных адреса: цифровой IP-адрес и символический доменный адрес. Присваивание адресов происходит по следующей схеме: международная организация Сетевой информационный центр выдает группы адресов владельцам локальных сетей, а последние распределяют конкретные адреса по своему усмотрению.
IP-адрес компьютера имеет длину 4 байта. Обычно первый и второй байты определяют адрес сети, третий байт определяет адрес подсети, а четвертый адрес компьютера в подсети. Для удобства IP-адрес записывают в виде четырех чисел со значениями от 0 до 255, разделенных точками, например: 145.37.5.150. Адрес сети 145.37; адрес подсети 5; адрес компьютера в подсети 150.
Доменный адрес (англ. domain область), в отличие от цифрового, является символическим и легче запоминается человеком. Пример доменного адреса: barsuk.les.nora.ru. Здесь домен barsuk имя реального компьютера, обладающего IP-адресом, домен les имя группы, присвоившей имя этому компьютеру, домен nora имя более крупной группы, присвоившей имя домену les, и т.д. В процессе передачи данных доменный адрес преобразуются в IP-адрес. Механизм такого преобразования подробно описан в [54].
World Wide Web (WWW, “Всемирная паутина”) основной инструмент Интернет, её главный информационный сервис.
World Wide Web (WWW, “Всемирная паутина”) гипертекстовая, а точнее, гипермедийная информационная система поиска ресурсов Интернет и доступа к ним. |
Гипертекст информационная структура, позволяющая устанавливать смысловые связи между элементами текста на экране компьютера таким образом, чтобы можно было легко осуществлять переходы от одного элемента к другому. На практике в гипертексте некоторые слова выделяют путем подчёркивания или окрашивания в другой цвет. Выделение слова говорит о наличии связи этого слова с некоторым документом, в котором тема, связанная с выделенным словом, рассматривается более подробно.
Гипермедиа это то, что получится, если в определении гипертекста заменить слово “текст” на “любые виды информации”: звук, графику, видео. Такие гипермедийные ссылки возможны, поскольку наряду с текстовой информацией можно связывать и любую другую двоичную информацию, например, закодированный звук или графику, Так, если программа отображает карту мира и если пользователь выбирает на этой карте с помощью мыши какой-либо континент, программа может тут же дать о нём графическую, звуковую и текстовую информацию.
Система WWW построена на специальном протоколе передачи данных, который называется протоколом передачи гипертекста HTTP (читается “эйч-ти-ти-пи”, HyperText Transfer Protocol).
Всё содержимое системы WWW состоит из WWW-страниц, называемых сайтами (англ. site участок).
WWW-cтраницы (cайты) гипермедийные документы системы World Wide Web. Создаются с помощью языка разметки гипертекста HTML (Hypertext markup language).
Язык HTML позволяет добавлять к текстовым документам специальные командные фрагменты тэги (англ. tag "этикетка, ярлык") таким образом, что становится возможным связывать с этими документами другие тексты, графику, звук и видео, задавать заголовки различных уровней, разделять текст на абзацы, строить таблицы и т.д. Например, заголовок документа может иметь такой вид: <TITLE> Клуб любителей персиков </TITLE>
Одну WWW-страницу на самом деле обычно составляет набор гипермедийных документов, расположенных на одном сервере, переплетённых взаимными ссылками и связанных по смыслу (например, содержащих информацию об одном учебном заведении или об одном музее). Каждый документ страницы, в свою очередь, может содержать несколько экранных страниц текста и иллюстраций. Каждая WWW-страница имеет свой “титульный лист” (англ. “homepage”) гипермедийный документ, содержащий ссылки на главные составные части страницы. Адреса “титульных листов” распространяются в Интернет в качестве адресов страниц.
Личные страницы такие WWW-страницы, которые принадлежат не фирмам и не организациям, а отдельным людям. Содержание и оформление такой страницы зависит только от её автора. |
При работе с системой WWW пользователи имеют дело с программами-клиентами системы, называемыми браузерами.
Браузеры (англ. browse листать, просматривать) программы, с помощью которых пользователь организует диалог с системой WWW: просматривает WWW страницы, взаимодействует с WWW-cерверами и другими ресурсами в Интернет. |
Существуют сотни программ-браузеров. Самые популярные браузеры: Netscape Navigator и Microsoft Explorer.
Браузеры WWW умеют взаимодействовать с любыми типами серверов, используя при этом их собственные протоколы. Информацию, полученную от любого сервера, браузер WWW выводит на экран в стандартной, удобной для восприятия форме. При этом переключения с одного протокола на другой для пользователя часто остаются незамеченными.
Программа удалённого доступа Telnet. Позволяет входить в другую вычислительную систему, работающую в Интернет, с помощью протокола TELNET. Эта программа состоит из двух компонент: программы-клиента, которая выполняется на компьютере-клиенте, и программы-сервера, которая выполняется на компьютере-сервере.
Функции программы-клиента:
Функции программы-сервера:
Telnet простое и поэтому универсальное средство связи в Интернет.
Программа пересылки файлов Ftp. Перемещает копии файлов с одного узла Интернет на другой в соответствии с протоколом FTP (File Transfer Protocol “протокол передачи файлов”). При этом не имеет значения, где эти узлы расположены и как соединены между собой.
Компьютеры, на которых есть файлы для общего пользования, называются FTP-серверами. В Интернет имеется более 10 Терабайт бесплатных файлов и программ.
Электронная почта (Electronic mail, англ. mail почта, сокр. E-mail, читается “и-мэйл”). Служит для передачи текстовых сообщений в пределах Интернет, а также между другими сетями электронной почты. К тексту письма современные почтовые программы позволяют прикреплять звуковые и графические файлы, а также двоичные файлы программы.
При использовании электронной почты каждому абоненту присваивается уникальный почтовый адрес, формат которого имеет вид: <имя пользователя> @ < имя почтового сервера>. Например: earth@space.com, где earth имя пользователя, space.com имя компьютера, @ разделительный символ “эт коммерческое”.
Сообщения, поступающие по E-Mail, хранятся в специальном “почтовом” компьютере в выделенной для получателя области дисковой памяти (его “почтовом ящике”), откуда он может их выгрузить и прочитать с помощью специальной программы-клиента.
Для отсылки сообщения нужно знать электронный адрес абонента. При качественной связи электронное письмо доходит в любую точку мира в течение нескольких минут.
Пользователи электронной почты стремятся придерживаться правил сетевого этикета (нэтикета), а для выражения эмоций используют схематические изображения человеческого лица, так называемые смайлики (англ. smiley, “улыбочка”), некоторые из которых приведены ниже.
Смайлики (рассматривайте, склонив голову влево) |
||
:-) улыбка |
:-Q курит |
:-)~ пускает слюнки |
Cистема телеконференций Usenet (от Users Network). Эта система организует коллективные обсуждения по различным направлениям, называемые телеконференциями. В каждой телеконференции проводится ряд дискуссий по конкретным темам.
Сегодня Usenet имеет более десяти тысяч дискуссионных групп (NewsGroups) или телеконференций, каждая из которых посвящена определённой теме и является средством обмена мнениями. Телеконференции разбиты на несколько групп:
Внутри этих категорий существует иерархия. Так, например, rec.music.beatles это дискуссия о творчестве Битлз, входящая в подгруппу “музыка” группы дискуссий по искусству.
Существует большой выбор программ чтения телеконференций, которые формируют материал дискуссий в упорядоченном виде и предоставляют в распоряжение корреспондентов.
Аналог телеконференций в других сетях “электронная доска объявлений” (Bulletin Board System, BBS).
Системы информационного поиска сети Интернет
В Интернет представлена информация на любые темы, которые только можно себе представить. Но найти в ней нужную информацию не так-то легко из-за того, что сеть по своей природе не имеет чёткой структуры. Поэтому для ориентировки в Интернет и быстрого получения свежей справочной информации разработаны системы поиска информации.
Все системы поиска информации Интернет располагаются на специально выделенных компьютерах с мощными каналами связи. Ежеминутно они бесплатно обслуживают огромное количество клиентов.
Поисковые системы можно разбить на два типа:
Системы, основанные на предметных каталогах. Используют базы данных, формируемые специалистами-редакторами, которые отбирают информацию, устанавливают связи для баз данных, организуют и снабжают данные в разных поисковых категориях перекрёстными ссылками. Кампании, владеющие предметными каталогами, непрерывно исследуют, описывают и каталогизируют содержимое WWW-cерверов и других сетевых ресурсов, разбросанных по всему миру. В результате этой работы клиенты Интернет имеют постоянно обновляющиеся иерархические (древовидные) каталоги, на верхнем уровне которых собраны самые общие категории, такие как “бизнес”, “наука”, “искусство” и т.п., а элементы самого нижнего уровня представляют собой ссылки на отдельные WWW-страницы и серверы вместе с кратким описанием их содержимого.
Пример. Если нужно выяснить, какая в мире имеется информация о пище динозавров, достаточно спуститься по иерархии:
Науки ==> Млекопитающие ==> Палеонтология ==> Динозавры ==> Пища.
Каталоги, составленные людьми, более осмыслены, чем автоматические индексы. Их очень мало, так как их создание и поддержка требуют огромных затрат. Для примера рассмотрим самый популярный предметный каталог Yahoo!, который обладает одной из крупнейших баз данных. Имеет информационные базы для детей и подростков. Поддерживает два основных метода работы с каталогом поиск по ключевым словам и поиск по иерархическому дереву разделов. Не принимает запросов на естественном языке.
Автоматические индексы. Переоценить их трудно. Поиск по ключевым словам в одной базе данных, занимающий в худшем случае несколько секунд, принесёт те же результаты, что и обшаривание всех WWW-страниц во всей сети Интернет.
Автоматический индекс состоит из трёх частей:
Все эти компоненты функционируют без вмешательства человека.
К автоматическим индексам следует прибегать только тогда, когда ключевые слова точно известны, например, фамилия человека или несколько специфических терминов из соответствующей области. Индексы получают информацию из каждого отдельного узла, регистрируют и индексируют её и добавляют к своим базам данных.
Среди известных индексов выделяется: AltaVista одна из самых мощных полностью автоматических поисковых систем. Обладает полнотекстовой базой данных. Выдаёт наибольшее количество ссылок. Проиндексировано 30 млн. страниц с 300 тысяч серверов и 4 млн. статей из телеконференций Usenet. За один день AltaVista обслуживает около 20 млн. запросов.
В Интернет один и тот же узел сети может одновременно работать по нескольким протоколам. Поэтому крупные узлы сети сейчас обладают полным набором серверов, и к ним можно обращаться почти по любому из существующих протоколов.
Термин “мультимедиа” образован из слов “мульти” много, и “медиа” среда, носитель, средства сообщения, и в первом приближении его можно перевести как “многосредность” .
Мультимедиа это собирательное понятие для различных компьютерных технологий, при которых используется несколько информационных сред, таких, как графика, текст, видео, фотография, движущиеся образы (анимация), звуковые эффекты, высококачественное звуковое сопровождение. |
Мультимедиа-компьютер это компьютер, снабженный аппаратными и программными средствами, реализующими технологию мультимедиа. |
Области применения мультимедиа
Специальными исследованиями установлено, что из услышанного в памяти остается только четверть, из увиденного треть, при комбинированном воздействии зрения и слуха 50%, а если вовлечь учащегося в активные действия в процессе изучения при помощи мультимедийных приложений 75% .
Технологию мультимедиа составляют две основные компоненты аппаратная и программная.
Аппаратные средства мультимедиа
Основные компьютер с высокопроизводительным процессором с тактовой частотой 100200 МГц, оперативной памятью 864 Мбайт, винчестерским накопителем ёмкостью 12 Гбайта и выше, накопителем на гибких магнитных дисках, манипуляторами, мультимедиа-монитором со встроенными стереодинамиками и видеоадаптером SVGA.
Специальные приводы CD-ROM; TV-тюнеры и фрейм-грабберы; графические акселераторы (ускорители), в том числе, для поддержки трёхмерной графики; платы видеовоспроизведения; устройства для ввода видеопоследовательностей; звуковые платы с установленными микшерами и музыкальными синтезаторами, воспроизводящими звучание реальных музыкальных инструментов; акустические системы с наушниками или динамиками и др.
Программные средства мультимедиа
Мультимедийные приложения энциклопедии, интерактивные курсы обучения по всевозможным предметам, игры и развлечения, работа с Интернет, тренажёры, средства торговой рекламы, электронные презентации, информационные киоски, установленные в общественных местах и предоставляющие различную информацию, и др.
Cредства создания мультимедийных приложений редакторы видеоизображений; профессиональные графические редакторы; средства для записи, создания и редактирования зву-ковой информации, позволяющие подготавливать звуковые файлы для включения в программы, изменять амплитуду сигнала, наложить или убрать фон, вырезать или вставить блоки данных на каком-то временном отрезке; программы для манипуляции с сегментами изображений, изменения цвета, палитры; программы для реализации гипертекстов и др.
Технологии мультимедиа
Телевизионный приём вывод телевизионных сигналов на монитор компьютера на фоне работы других программ.
Видеозахват “захват” и “заморозка” в цифровом виде отдельных видеокадров.
Анимация воспроизведение последовательности картинок, создающее впечатление движущегося изображения.
Звуковые эффекты сохранение в цифровом виде звучания музыкальных инструментов, звуков природы или музыкальных фрагментов, созданных на компьютере, либо записаных и оцифрованых.
Трёхмерная (3D) графика графика, создаваемая с помощью изображений, имеющих не только длину и ширину, но и глубину.
Музыка MIDI (Musical Instrument Digital Interface, цифровой интерфейс музыкальных инструментов) стандарт, позволяющий подсоединять к компьютеру цифровые музыкальные инструменты, используемые при сочинении и записи музыки.
Виртуальная реальность (Virtual Reality, VR). Слово “виртуальный” означает “действующий и проявляющий себя как настоящий”. Виртуальная реальность это высокоразвитая форма компьютерного моделирования, которая позволяет пользователю погрузиться в модельный мир и непосредственно действовать в нём. Зрительные, слуховые, осязательные и моторные ощущения пользователя при этом заменяются их имитацией, генерируемой компьютером.
Признаки устройств виртуальной реальности: моделирование в реальном масштабе времени; имитация окружающей обстановки с высокой степенью реализма; возможность воздействовать на окружающую обстановку и иметь при этом обратную связь.
Пример использования виртуальной реальности: архитектурно-строительная компания использует программное обеспечение, позволяющее заказчикам “посетить” виртуальный образ будущего архитектурного сооружения задолго до того, как будет начато строительство.
2.1. Какова роль аппаратуры (HardWare) и программного обеспечения (SoftWare) компьютера?
2.2. Какие основные классы компьютеров Вам известны?
2.3. В чём состоит принцип действия компьютеров?
2.4. Из каких простейших элементов состоит программа?
2.5. Что такое система команд компьютера?
2.6. Перечислите главные устройства компьютера.
2.7. Опишите функции памяти и функции процессора.
2.8. Назовите две основные части процессора. Каково их назначение?
2.9. Что такое регистры? Назовите некоторые важные регистры и опишите их функции.
2.10. Сформулируйте общие принципы построения компьютеров.
2.11. В чём заключается принцип программного управления? Как выполняются команды условных и безусловных переходов?
2.12. В чём суть принципа однородности памяти? Какие возможности он открывает?
2.13. В чём заключается принцип адресности?
2.14. Какие архитектуры называются "фон-неймановскими"?
2.15. Что такое команда? Что описывает команда?
2.16. Какого рода информацию может содержать адресная часть команды?
2.17. Приведите примеры команд одноадресных, двухадресных, трёхадресных.
2.18. Каким образом процессор при выполнении программы осуществляет выбор очередной команды?
2.19. Опишите основной цикл процесса обработки команд.
2.20. Что понимается под архитектурой компьютера? Какие характеристики компьютера определяются этим понятием? Верно ли, что общность архитектуры разных компьютеров обеспечивает их совместимость в плане реализации функциональных элементов?
2.21. Что понимается под структурой компьютера? Какой уровень детализации описания компьютера может она обеспечить?
2.22. Перечислите распространённые компьютерные архитектуры.
2.23. Каковы отличительные особенности классической архитектуры?
2.24. Что собой представляет шина компьютера? Каковы функции общей шины (магистрали)?
2.25. Какую функцию выполняют контроллеры?
2.26. Как характер решаемых задач связан с архитектурой компьютера?
2.27. Какие отличительные особенности присущи многопроцессорной архитектуре? Многомашинной архитектуре? Архитектуре с параллельным процессором?
2.28. Что такое центральный процессор?
2.29. Какие основные компоненты содержат в себе современные микропроцессоры?
2.30. Как конструктивно выполнены современные микропроцессоры?
2.31. Перечислите основные и производные единицы измерения количества памяти.
2.32. Назовите две основные разновидности памяти компьютера.
2.33. Перечислите основные компоненты внутренней памяти.
2.34. Что представляет собой ОЗУ? Каково её назначение?
2.35. В чём разница между памятью статической и динамической?
2.36. Что собой представляет модуль памяти типа SIMM? Какие другие типы модулей памяти Вы знаете?
2.37. Каково назначение кэш-памяти? Каким образом она реализуется?
2.38. Что такое специальная память? Характеризуйте её основные виды.
2.39. Что такое BIOS и какова её роль?
2.40. Каково назначение внешней памяти? Перечислите разновидности устройств внешней памяти.
2.41. Что собой представляет гибкий диск?
2.42. В чём суть магнитного кодирования двоичной информации?
2.43. Как работают накопители на гибких магнитных дисках и накопители на жёстких магнитных дисках?
2.44. Каковы достоинства и недостатки накопителей на компакт-дисках?
2.45. Опишите работу стримера.
2.46. Как работает аудиоадаптер? Видеоадаптер?
2.47. Какие типы видеоплат используются в современных компьютерах?
2.48. Назовите главные компоненты и основные управляющие клавиши клавиатуры.
2.49. Перечислите основные компоненты видеосистемы компьютера.
2.50. Как формируется изображение на экране цветного монитора?
2.51. Как устроены жидкокристаллические мониторы? Проведите сравнение таких мониторов с мониторами, построенными на основе ЭЛТ.
2.52. Опишите работу матричных, лазерных и струйных принтеров.
2.53. Чем работа плоттера отличается от работы принтера?
2.54. Опишите способ передачи информации посредством модема.
2.55. Перечислите основные виды манипуляторов и опишите принципы из работы.
2.56. Что понимают под персональным компьютером?
2.57. Какие характеристики компьютера стандартизируются для реализации принципа открытой архитектуры?
2.58. Что такое аппаратный интерфейс?
2.59. Каково назначение контроллеров и адаптеров? В чём заключается разница между контроллером и адаптером?
2.60. Что такое порты устройств? Охарактеризуйте основные виды портов.
2.61. Перечислите основные блоки современного компьютера.
2.62. Каково назначение межкомпьютерной связи?
2.63. Опишите технологию "клиентсервер".
2.64. Каким образом преодолевается проблема несовместимости интерфейсов в компьютерных сетях?
2.65. Что такое протокол коммуникации?
2.66. Почему данные передаются при помощи пакетов?
2.67. Охарактеризуйте основные виды сетевых топологий.
2.68. Назовите характеристики распространённых сетевых архитектур.
2.69. Дайте краткую характеристику специального сетевого оборудования.
2.70. В каких областях и с какой целью применяются локальные сети?
2.71. Перечислите основные сервисы сети Интернет.
2.72. Что такое IP-адрес?
2.73. Какие основные услуги предоставляет пользователям система WWW?
2.74. Как организованы системы информационного поиска сети Интернет?
2.75. Дайте сравнительную характеристику систем информационного поиска Yahoo! и Alta Vista.
2.76. Охарактеризуйте основные виды технологий мультимедиа.
2.77. Приведите примеры устройств "виртуальной реальности" и опишите принципы их работы.
2.78. Каким вам представляется мультимедийный компьютер?
2.79. Какой носитель информации используется для распространения мультимедиа-программ?
2.80. Охарактеризуйте средства создания мультимедиа-приложений.
***********************************
Существуют различные классификации компьютерной техники:
Четких границ между классами компьютеров не существует. По мере совершенствования структур и технологии производства, появляются новые классы компьютеров, границы существующих классов существенно изменяются.
Деление компьютерной техники на поколения весьма условная, нестрогая классификация вычислительных систем по степени развития аппаратных и программных средств, а также способов общения с компьютером. |
Идея делить машины на поколения вызвана к жизни тем, что за время короткой истории своего развития компьютерная техника проделала большую эволюцию как в смысле элементной базы (лампы, транзисторы, микросхемы и др.), так и в смысле изменения её структуры, появления новых возможностей, расширения областей применения и характера использования.
История счётных устройств насчитывает много веков. Ниже в хронологическом порядке приводятся некоторые наиболее значимые события этой истории, их даты и имена участников.
Около 500 г. н.э. Изобретение счётов (абака) устройства, состоящего из набора костяшек, нанизанных на стержни.
1614 г. Шотландец Джон Непер изобрёл логарифмы. Вскоре после этого Р. Биссакар создал логарифмическую линейку.
Блез Паскаль
1642 г. Французский ученый Блез Паскаль приступил к созданию арифметической машины механического устройства с шестернями, колёсами, зубчатыми рейками и т.п. Она умела "запоминать" числа и выполнять элементарные арифметические операции.
Перфокарта
1804 г. Французский инженер Жаккар изобрёл перфокарты для управления автоматическим ткацким станком.
1834 г. Английский ученый Чарльз Бэббидж составил проект "аналитической" машины, в которую входили: устройства ввода и вывода информации, запоминающее устройство для хранения чисел, устройство, способное выполнять арифметические операции, и устройство, управляющее последовательностью действий машины. Команды вводились с помощью перфокарт. Проект не был реализован.
1876 г. Английский инженер Александер Белл изобрёл телефон.
1890 г. Американский инженер Герман Холлерит создал статистический табулятор, в котором информация, нанесённая на перфокарты, расшифровывалась электрическим током. Табулятор использовался для обработки результатов переписи населения в США.
1892 г. Американский инженер У. Барроуз выпустил первый коммерческий сумматор.
1897 г. Английский физик Дж. Томсон сконструировал электронно-лучевую трубку.
1901 г. Итальянский физик Гульельмо Маркони установил радиосвязь между Европой и Америкой.
Алан Тьюринг
1904-1906 гг. Сконструированы электронные диод и триод.
1936 г. Алан Тьюринг и независимо от него Э. Пост выдвинули и разработали концепцию абстрактной вычислительной машины. Они доказали принципиальную возможность решения автоматами любой проблемы при условии возможности её алгоритмизации.
1938 г. Немецкий инженер Конрад Цузе построил первый чисто механический компьютер.
Конрад Цузе
1938 г. Американский математик и инженер Клод Шеннон показал возможность применения аппарата математической логики для синтеза и анализа релейно-контактных переключательных схем.
1939 г. Американец болгарского происхождения Джон Атанасофф создал прототип вычислительной машины на базе двоичных элементов.
Марк-1
1941 г. Конрад Цузе сконструировал первый универсальный компьютер на электромеханических элементах. Он работал с двоичными числами и использовал представление чисел с плавающей запятой.
1944 г. Под руководством американского математика Говарда Айкена создана автоматическая вычислительная машина "Марк-1" с программным управлением. Она была построена на электро-механических реле, а программа обработки данных вводилась с перфоленты.
Джон фон Нейман
1945 г. Джон фон Нейман в отчёте "Предварительный доклад о машине Эдвак" сформулировал основные принципы работы и компоненты современных компьютеров.
Компьютер "Эниак", 1946 г.
1946 г. Американцы Дж. Эккерт и Дж. Моучли сконструировали первый электронный цифровой компьютер "Эниак" (Electronic Numerical Integrator and Computer). Машина имела 20 тысяч электронных ламп и 1,5 тысячи реле. Она работала в тысячу раз быстрее, чем "Марк-1", выполняя за одну секунду 300 умножений или 5000 сложений.
Транзистор
1948 г. В американской фирме Bell Laboratories физики Уильям Шокли, Уолтер Браттейн и Джон Бардин создали транзистор. За это достижение им была присуждена Нобелевская премия.
1949 г. В Англии под руководством Мориса Уилкса построен первый в мире компьютер с хранимой в памяти программой EDSAC.
1957 г. Американской фирмой NCR создан первый компьютер на транзисторах.
1951 г. В Киеве построен первый в континентальной Европе компьютер МЭСМ (малая электронная счетная машина), имеющий 600 электронных ламп. Создатель С.А. Лебедев.
1951-1955 гг. Благодаря деятельности российских ученых С.А. Лебедева, М.В. Келдыша, М.А. Лаврентьева, И.С. Брука, М.А. Карцева, Б.И. Рамеева, В.С. Антонова, А.Н. Невского, Б.И. Буркова и руководимых ими коллективов Советский Союз вырвался в число лидеров вычислительной техники, что позволило в короткие сроки решить важные научно-технические задачи овладения ядерной энергией и исследования Космоса.
1952 г. Под руководством С.А. Лебедева в Москве построен компьютер БЭСМ-1 (большая электронная счетная машина) на то время самая производительная машина в Европе и одна из лучших в мире.
1955-1959 гг. Российские ученые А.А. Ляпунов, С.С. Камынин, Э.З. Любимский, А.П. Ершов, Л.Н. Королев, В.М. Курочкин, М.Р. Шура-Бура и др. создали "программирующие программы" прообразы трансляторов. В.В. Мартынюк создал систему символьного кодирования средство ускорения разработки и отладки программ.
1955-1959 гг. Заложен фундамент теории программирования (А.А. Ляпунов, Ю.И. Янов, А.А. Марков, Л.А. Калужин) и численных методов (В.М. Глушков, А.А. Самарский, А.Н. Тихонов). Моделируются схемы механизма мышления и процессов генетики, алгоритмы диагностики медицинских заболеваний (А.А. Ляпунов, Б.В. Гнеденко, Н.М. Амосов, А.Г. Ивахненко, В.А. Ковалевский и др.).
Джон Бэкус
Интегральная схема
1958 г. Джек Килби из фирмы Texas Instruments создал первую интегральную схему.
1957 г. Первое сообщение о языке Фортран (Джон Бэкус).
1959 г. Под руководством С.А. Лебедева создана машина БЭСМ-2 производительностью 10 тыс. опер./с. С ее применением связаны расчеты запусков космических ракет и первых в мире искусственных спутников Земли.
С.А. Лебедев
1959 г. Создана машина М-20, главный конструктор С.А. Лебедев. Для своего времени одна из самых быстродействующих в мире (20 тыс. опер./с.). На этой машине было решено большинство теоретических и прикладных задач, связанных с развитием самых передовых областей науки и техники того времени. На основе М-20 была создана уникальная многопроцессорная М-40 самая быстродействующая ЭВМ того времени в мире (40 тыс. опер./с.). На смену М-20 пришли полупроводниковые БЭСМ-4 и М-220 (200 тыс. опер./с.).
1959 г. Первое сообщение о языке Алгол, который надолго стал стандартом в области языков программирования.
1961 г. Фирма IBM Deutschland реализовала подключение компьютера к телефонной линии с помощью модема.
1964 г. Начат выпуск семейства машин третьего поколения IBM/360.
БЭСМ-6
1965 г. Дж. Кемени и Т. Курц в Дортмундском колледже (США) разработали язык программирования Бейсик.
1967 г. Под руководством С.А. Лебедева организован крупно-серийный выпуск шедевра отечественной вычислительной техники миллионника БЭСМ-6, самой быстродействующей машины в мире. За ним последовал "Эльбрус" ЭВМ нового типа, производительностью 10 млн. опер./с.
Никлаус Вирт
1968 г. Основана фирма Intel, впоследствии ставшая признанным лидером в области производства микропроцессоров и других компьютерных интегральных схем.
1970 г. Швейцарец Никлаус Вирт разработал язык Паскаль.
1971 г. Фирма Intel разработала микропроцессор 4004, состоящий из 2250 транзисторов, размещённых в кристалле размером не больше шляпки гвоздя.
1971 г. Французский учёный Алан Колмари разработал язык логического программирования Пролог (PROgramming in LOGic).
Деннис Ритчи
1972 г. Деннис Ритчи из Bell Laboratories разработал язык Си.
1973 г. Кен Томпсон и Деннис Ритчи создали операционную систему UNIX.
1973 г. Фирма IBM (International Business Machines Corporation) сконструировала первый жёсткий диск типа "винчестер".
1974 г. Фирма Intel разработала первый универсальный восьмиразрядный микропроцессор 8080 с 4500 транзисторами.
Альтаир
1974 г. Эдвард Робертс, молодой офицер ВВС США, инженер-электронщик, построил на базе процессора 8080 микрокомпьютер Альтаир, имевший огромный коммерческий успех, продававшийся по почте и широко использовавшийся для домашнего применения.
Билл Гейтс и Пол Аллен
1975 г. Молодой программист Пол Аллен и студент Гарвардского университета Билл Гейтс реализовали для Альтаира язык Бейсик. Впоследствии они основали фирму Майкрософт (Microsoft), являющуюся сегодня крупнейшим производителем программного обеспечения.
1975 г. Фирма IBM начала продажу лазерных принтеров.
Apple-1
1976 г. Студенты Стив Возняк и Стив Джобс, устроив мастерскую в гараже, реализовали компьютер Apple-1, положив начало корпорации Apple.
Стивен Джобс и Стефан Возняк
1978 г. Фирма Intel выпустила микропроцессор 8086.
1979 г. Фирма Intel выпустила микропроцессор 8088.
1979 г. Фирма SoftWare Arts разработала первый пакет деловых программ VisiCalc (Visible Calculator) для персональных компьютеров.
1980 г. Японские компании Sharp, Sanyo, Panasonic, Casio и американская фирма Tandy вынесли на рынок первый карманный компьютер, обладающий всеми основными свойствами больших компьютеров.
1981 г. Фирма IBM выпустила первый персональный компьютер IBM PC на базе микропроцессора 8088.
1982 г. Фирма Intel выпустила микропроцессор 80286.
Lisa
1983 г. Корпорация Apple Computers построила персональный компьютер "Lisa" первый офисный компьютер, управляемый манипулятором "мышь".
1983 г. Гибкие диски получили распространение в качестве стандартных носителей информации.
Андерс Хейльсберг
1983 г. Фирмой Borland выпущен в продажу компилятор Turbo Pascal, разработанный Андерсом Хейльсбергом (Anders Hejlsberg).
1984 г. Создан первый компьютер типа Laptop (наколенный), в котором системный блок объединен с дисплеем и клавиатурой в единый блок.
1984 г. Фирмы Sony и Phillips разработали стандарт записи компакт-дисков CD-ROM.
Macintosh
1984 г. Корпорация Apple Computer выпустила компьютер Macintosh первую модель знаменитого впоследствии семейства Macintosh c удобной для пользователя операционной системой, развитыми графическими возможностями, намного превосходящими в то время те, которыми обладали стандартные IBM-совместимые ПК с MS-DOS. Эти компьютеры быстро приобрели миллионы поклонников и стали вычислительной платформой для целых отраслей, таких например, как издательское дело и образование.
1985 г. Фирма Intel выпустила микропроцессор 80386.
1989 г. Американская фирма Poquet Computers Corporation представила новый компьютер класса Subnotebook Pocket PC.
1993 г. Фирма Intel выпустила микропроцессор Pentium.
1994 г. Начало выпуска фирмой Power Mac серии фирмы Apple Computers Power PC.
1995 г. Выпущена в свет операционная система Windows 95.
К первому поколению обычно относят машины, созданные на рубеже 50-х годов. В их схемах использовались электронные лампы. Эти компьютеры были огромными, неудобными и слишком дорогими машинами, которые могли приобрести только крупные корпорации и правительства. Лампы потребляли огромное количество электроэнергии и выделяли много тепла.
Электронная
лампа
Компьютер "Эниак".
Первое поколение
Набор команд был небольшой, схема арифметико-логического устройства и устройства управления достаточно проста, программное обеспечение практически отсутствовало. Показатели объема оперативной памяти и быстродействия были низкими. Для ввода-вывода использовались перфоленты, перфокарты, магнитные ленты и печатающие устройства.
Быстродействие порядка 10-20 тысяч операций в секунду.
Но это только техническая сторона. Очень важна и другая способы использования компьютеров, стиль программирования, особенности математического обеспечения.
Перфокарта
Программы для этих машин писались на языке конкретной машины. Математик, составивший программу, садился за пульт управления машины, вводил и отлаживал программы и производил по ним счет. Процесс отладки был наиболее длительным по времени.
Несмотря на ограниченность возможностей, эти машины позволили выполнить сложнейшие расчёты, необходимые для прогнозирования погоды, решения задач атомной энергетики и др.
Опыт использования машин первого поколения показал, что существует огромный разрыв между временем, затрачиваемым на разработку программ, и временем счета.
ЭВМ "Урал"
Эти проблемы начали преодолевать путем интенсивной разработки средств автоматизации программирования, создания систем обслуживающих программ, упрощающих работу на машине и увеличивающих эффективность её использования. Это, в свою очередь, потребовало значительных изменений в структуре компьютеров, направленных на то, чтобы приблизить её к требованиям, возникшим из опыта эксплуатации компьютеров.
Отечественные машины первого поколения: МЭСМ (малая электронная счётная машина), БЭСМ, Стрела, Урал, М-20.
Транзистор
БЭСМ-6. Второе поколение
Второе поколение компьютерной техники машины, сконструированные примерно в 1955-65 гг. Характеризуются использованием в них как электронных ламп, так и дискретных транзисторных логических элементов. Их оперативная память была построена на магнитных сердечниках. В это время стал расширяться диапазон применяемого оборудования ввода-вывода, появились высокопроизводительные устройства для работы с магнитными лентами, магнитные барабаны и первые магнитные диски.
Память на магнитных
сердечниках
Быстродействие до сотен тысяч операций в секунду, ёмкость памяти до нескольких десятков тысяч слов.
Появились так называемые языки высокого уровня, средства которых допускают описание всей необходимой последовательности вычислительных действий в наглядном, легко воспринимаемом виде.
Программа, написанная на алгоритмическом языке, непонятна компьютеру, воспринимающему только язык своих собственных команд. Поэтому специальные программы, которые называются трансляторами, переводят программу с языка высокого уровня на машинный язык.
Появился широкий набор библиотечных программ для решения разнообразных математических задач. Появились мониторные системы, управляющие режимом трансляции и исполнения программ. Из мониторных систем в дальнейшем выросли современные операционные системы.
Операционная система важнейшая часть программного обеспечения компьютера, предназначенная для автоматизации планирования и организации процесса обработки программ, ввода-вывода и управления данными, распределения ресурсов, подготовки и отладки программ, других вспомогательных операций обслуживания. |
Таким образом, операционная система является программным расширением устройства управления компьютера.
Для некоторых машин второго поколения уже были созданы операционные системы с ограниченными возможностями.
Машинам второго поколения была свойственна программная несовместимость, которая затрудняла организацию крупных информационных систем. Поэтому в середине 60-х годов наметился переход к созданию компьютеров, программно совместимых и построенных на микроэлектронной технологической базе.
Компьютер IBM-360.
Третье поколение
Машины третьего поколения созданы примерно после 60-x годов. Поскольку процесс создания компьютерной техники шел непрерывно, и в нём участвовало множество людей из разных стран, имеющих дело с решением различных проблем, трудно и бесполезно пытаться установить, когда "поколение" начиналось и заканчивалось. Возможно, наиболее важным критерием различия машин второго и третьего поколений является критерий, основанный на понятии архитектуры.
Интегральная схема
Машины третьего поколения это семейства машин с единой архитектурой, т.е. программно совместимых. В качестве элементной базы в них используются интегральные схемы, которые также называются микросхемами.
Машины третьего поколения имеют развитые операционные системы. Они обладают возможностями мультипрограммирования, т.е. одновременного выполнения нескольких программ. Многие задачи управления памятью, устройствами и ресурсами стала брать на себя операционная система или же непосредственно сама машина.
Примеры машин третьего поколения семейства IBM-360, IBM-370, ЕС ЭВМ (Единая система ЭВМ), СМ ЭВМ (Семейство малых ЭВМ) и др.
Быстродействие машин внутри семейства изменяется от нескольких десятков тысяч до миллионов операций в секунду. Ёмкость оперативной памяти достигает нескольких сотен тысяч слов.
Краткое описание процесса изготовления микросхем |
|
Четвёртое поколение это теперешнее поколение компьютерной техники, разработанное после 1970 года.
Наиболее важный в концептуальном отношении критерий, по которому эти компьютеры можно отделить от машин третьего поколения, состоит в том, что машины четвёртого поколения проектировались в расчете на эффективное использование современных высокоуровневых языков и упрощение процесса программирования для конечного пользователя.
В аппаратурном отношении для них характерно широкое использование интегральных схем в качестве элементной базы, а также наличие быстродействующих запоминающих устройств с произвольной выборкой ёмкостью в десятки мегабайт.
C точки зрения структуры машины этого поколения представляют собой многопроцессорные и многомашинные комплексы, работающие на общую память и общее поле внешних устройств. Быстродействие составляет до нескольких десятков миллионов операций в секунду, ёмкость оперативной памяти порядка 1 - 64 Мбайт.
Для них характерны:
Разработка последующих поколений компьютеров производится на основе больших интегральных схем повышенной степени интеграции, использования оптоэлектронных принципов (лазеры, голография).
Развитие идет также по пути "интеллектуализации" компьютеров, устранения барьера между человеком и компьютером. Компьютеры будут способны воспринимать информацию с рукописного или печатного текста, с бланков, с человеческого голоса, узнавать пользователя по голосу, осуществлять перевод с одного языка на другой.
В компьютерах пятого поколения произойдёт качественный переход от обработки данных к обработке знаний. |
Архитектура компьютеров будущего поколения будет содержать два основных блока. Один из них это традиционный компьютер. Но теперь он лишён связи с пользователем. Эту связь осуществляет блок, называемый термином "интеллектуальный интерфейс". Его задача понять текст, написанный на естественном языке и содержащий условие задачи, и перевести его в работающую программу для компьютера.
Будет также решаться проблема децентрализации вычислений с помощью компьютерных сетей, как больших, находящихся на значительном расстоянии друг от друга, так и миниатюрных компьютеров, размещённых на одном кристалле полупроводника.
По условиям эксплуатации компьютеры делятся на два типа:
Офисные предназначены для решения широкого класса задач при нормальных условиях эксплуатации.
Индустриальный компьютер
Cпециальные компьютеры служат для решения более узкого класса задач или даже одной задачи, требующей многократного решения, и функционируют в особых условиях эксплуатации.
Машинные ресурсы специальных компьютеров часто ограничены. Однако их узкая ориентация позволяет реализовать заданный класс задач наиболее эффективно.
Специальные компьютеры управляют технологическими установками, работают в операционных или машинах скорой помощи, на ракетах, самолётах и вертолётах, вблизи высоковольтных линий передач или в зоне действия радаров, радиопередатчиков, в неотапливаемых помещениях, под водой на глубине, в условиях пыли, грязи, вибраций, взрывоопасных газов и т.п. Существует много моделей таких компьютеров. Познакомимся с одной из них.
Компьютер Ergotouch
Компьютер Ergotouch (Эрготач) [48] исполнен в литом алюминиевом полностью герметичном корпусе, который легко открывается для обслуживания.
Cтенки компьютера поглощают практически все электромагнитные излучения как изнутри, так и снаружи. Машина оборудована экраном, чувствительным к прикосновениям.
Компьютер можно, не выключая, мыть из шланга, дезинфицировать, дезактивировать, обезжиривать.
Высочайшая надежность позволяет использовать его как средство управления и контроля технологическими процессами в реальном времени. Компьютер легко входит в локальную сеть предприятия.
Важное направление в создании промышленных компьютеров разработка "операторского интерфейса" пультов управления, дисплеев, клавиатур и указательных устройств во всевозможных исполнениях. От этих изделий напрямую зависит комфортность и результативность труда операторов.
По производительности и характеру использования компьютеры можно условно подразделить на:
Микрокомпьютеры это компьютеры, в которых центральный процессор выполнен в виде микропроцессора.
Продвинутые модели микрокомпьютеров имеют несколько микропроцессоров. Производительность компьютера определяется не только характеристиками применяемого микропроцессора, но и ёмкостью оперативной памяти, типами периферийных устройств, качеством конструктивных решений и др.
Микрокомпьютеры представляют собой инструменты для решения разнообразных сложных задач. Их микропроцессоры с каждым годом увеличивают мощность, а периферийные устройства эффективность. Быстродействие порядка 1 - 10 миллионов опеpаций в сек.
Разновидность микрокомпьютера микроконтроллер. Это основанное на микропроцессоре специализированное устройство, встраиваемое в систему управления или технологическую линию.
Персональные компьютеры (ПК) это микрокомпьютеры универсального назначения, рассчитанные на одного пользователя и управляемые одним человеком. |
В класс персональных компьютеров входят различные машины от дешёвых домашних и игровых с небольшой оперативной памятью, с памятью программы на кассетной ленте и обычным телевизором в качестве дисплея, до сверхсложных машин с мощным процессором, винчестерским накопителем ёмкостью в десятки Гигабайт, с цветными графическими устройствами высокого разрешения, средствами мультимедиа и другими дополнительными устройствами.
Пеpсональный компьютеp должен удовлетворять следующим требованиям:
Миникомпьютерами и суперминикомпьютерами называются машины, конструктивно выполненные в одной стойке, т.е. занимающие объём порядка половины кубометра. Сейчас компьютеры этого класса вымирают, уступая место микрокомпьютерам.
Мэйнфреймы предназначены для решения широкого класса научно-технических задач и являются сложными и дорогими машинами. Их целесообразно применять в больших системах при наличии не менее 200 - 300 рабочих мест.
Централизованная обработка данных на мэйнфрейме обходится примерно в 5 - 6 раз дешевле, чем распределённая обработка при клиент-серверном подходе.
Известный мэйнфрейм S/390 фирмы IBM обычно оснащается не менее чем тремя процессорами. Максимальный объём оперативного хранения достигает 342 Терабайт.
Производительность его процессоров, пропускная способность каналов, объём оперативного хранения позволяют наращивать число рабочих мест в диапазоне от 20 до 200000 с помощью простого добавления процессорных плат, модулей оперативной памяти и дисковых накопителей.
Десятки мэйнфреймов могут работать совместно под управлением одной операционной системы над выполнением единой задачи.
Суперкомпьютер CRAY-1
Суперкомпьютеры это очень мощные компьютеры с производительностью свыше 100 мегафлопов (1 мегафлоп миллион операций с плавающей точкой в секунду). Они называются сверхбыстродействующими. Эти машины представляют собой многопроцессорные и (или) многомашинные комплексы, работающие на общую память и общее поле внешних устройств. Различают суперкомпьютеры среднего класса, класса выше среднего и переднего края (high end).
Архитектура суперкомпьютеров основана на идеях параллелизма и конвейеризации вычислений.
В этих машинах параллельно, то есть одновременно, выполняется множество похожих операций (это называется мультипроцессорной обработкой). Таким образом, сверхвысокое быстродействие обеспечивается не для всех задач, а только для задач, поддающихся распараллеливанию.
Что такое конвейеpная обработка? Приведем сравнение на каждом рабочем месте конвейера выполняется один шаг производственного процесса, а на всех рабочих местах в одно и то же время обрабатываются различные изделия на всевозможных стадиях. По такому принципу устроено арифметико-логическое устройство суперкомпьютера.
Отличительной особенностью суперкомпьютеров являются векторные процессоры, оснащенные аппаратурой для параллельного выполнения операций с многомерными цифровыми объектами векторами и матрицами. В них встроены векторные регистры и параллельный конвейерный механизм обработки. Если на обычном процессоре программист выполняет операции над каждым компонентом вектора по очереди, то на векторном выдаёт сразу векторые команды.
Векторная аппаратура очень дорога, в частности, потому, что требуется много сверхбыстродействующей памяти под векторные регистры.
Наиболее распространённые суперкомпьютеры массово-параллельные компьютерные системы. Они имеют десятки тысяч процессоров, взаимодействующих через сложную, иерархически организованую систему памяти.
В качестве примера рассмотрим характеристики многоцелевого массово-параллельного суперкомпьютера среднего класса Intel Pentium Pro 200. Этот компьютер содержит 9200 процессоров Pentium Pro на 200 Мгц, в сумме (теоретически) обеспечивающих производительность 1,34 Терафлоп (1 Терафлоп равен 1012 операций с плавающей точкой в секунду), имеет 537 Гбайт памяти и диски ёмкостью 2,25 Терабайт. Система весит 44 тонны (кондиционеры для неё целых 300 тонн) и потребляет мощность 850 кВт.
Супер-компьютеры используются для решения сложных и больших научных задач (метеорология, гидродинамика и т. п.), в управлении, разведке, в качестве централизованных хранилищ информации и т.д.
Элементная база микросхемы сверхвысокой степени интеграции.
Портативные компьютеры обычно нужны руководителям предприятий, менеджерам, учёным, журналистам, которым приходится работать вне офиса дома, на презентациях или во время командировок.
Основные разновидности портативных компьютеров:
Laptop
Laptop (наколенник, от lap колено и top поверх). По размерам близок к обычному портфелю. По основным характеристикам (быстродействие, память) примерно соответствует настольным ПК. Сейчас компьютеры этого типа уступают место ещё меньшим.
Notebook
Notebook (блокнот, записная книжка). По размерам он ближе к книге крупного формата. Имеет вес около 3 кг. Помещается в портфель-дипломат. Для связи с офисом его обычно комплектуют модемом. Ноутбуки зачастую снабжают приводами CD-ROM.
Многие современные ноутбуки включают взаимозаменяемые блоки со стандартными разъёмами. Такие модули предназначены для очень разных функций. В одно и то же гнездо можно по мере надобности вставлять привод компакт-дисков, накопитель на магнитных дисках, запасную батарею или съёмный винчестер. Ноутбук устойчив к сбоям в энергопитании. Даже если он получает энергию от обычной электросети, в случае какого-либо сбоя он мгновенно переходит на питание от аккумуляторов.
Palmtop
Персональный
цифровой помощник
Palmtop (наладонник) самые маленькие современные персональные компьютеры. Умещаются на ладони. Магнитные диски в них заменяет энергонезависимая электронная память. Нет и накопителей на дисках обмен информацией с обычными компьютерами идет линиям связи. Если Palmtop дополнить набором деловых программ, записанных в его постоянную память, получится персональный цифровой помощник (Personal Digital Assistant).
3.1. По каким признакам можно разделять компьютеры на классы и виды?
3.2. Как эволюционировала элементная база компьютеров от поколения к поколению?
3.3. В какой последовательности возникали известные Вам языки программирования?
3.4. Когда микрокомпьютеры стали доступны для широкого домашнего применения?
3.5. Можете ли Вы связать понятия "яблоко", "гараж" и "компьютер"?
3.6. На основе каких технических элементов создавались компьютеры первого поколения?
3.7. Какую основную проблему перед разработчиками и пользователями выдвинул опыт эксплуатации компьютеров первого поколения?
3.8. Какая элементная база характерна для второго поколения компьютеров?
3.9. Какую функцию выполняет операционная система в процессе работы компьютера?
3.10. На какой элементной базе конструируются машины третьего поколения?
3.11. Из каких основных этапов состоит процесс изготовления микросхем?
3.12. Для каких поколений компьютеров характерно широкое использование интегральных схем?
3.13. Какое быстродействие характерно для машин четвёртого поколения?
3.14. Что подразумевают под "интеллектуальностью" компьютеров?
3.15. Какую задачу должен решать "интеллектуальный интерфейс" в машинах пятого поколения?
3.16. Какими особенностями должны обладать промышленные компьютеры?
3.17. Что такое операторский компьютерный интерфейс?
3.18. По каким основным признакам можно отличить мэйнфреймы от других современных компьютеров?
3.19. На какое количество пользователей рассчитаны мэйнфреймы?
3.20. Какие идеи лежат в основе архитектуры суперкомпьютеров?
3.21. На каких типах задач максимально реализуются возможности суперкомпьютеров?
3.22. Какие свойства и конструктивные особенности отличают векторные процессоры?
3.23. Назовите основные характеристики какого-либо суперкомпьютера.
3.24. Что означают в переводе на русский язык названия Laptop, Notebook, Palmtop?
3.25. Как в Palmtop компенсируется отсутствие накопителей на дисках?
***********************************
Система счисления это способ записи чисел с помощью заданного набора специальных знаков (цифр). |
Существуют позиционные и непозиционные системы счисления.
В непозиционных системах вес цифры (т.е. тот вклад, который она вносит в значение числа) не зависит от ее позиции в записи числа. Так, в римской системе счисления в числе ХХХII (тридцать два) вес цифры Х в любой позиции равен просто десяти.
В позиционных системах счисления вес каждой цифры изменяется в зависимости от ее положения (позиции) в последовательности цифр, изображающих число. Например, в числе 757,7 первая семерка означает 7 сотен, вторая 7 единиц, а третья 7 десятых долей единицы.
Сама же запись числа 757,7 означает сокращенную запись выражения
700 + 50 + 7 + 0,7 = 7•102 + 5•101 + 7•100 + 7•10-1 = 757,7.
Любая позиционная система счисления характеризуется своим основанием.
Основание позиционной системы счисления это количество различных знаков или символов, используемых для изображения цифр в данной системе. |
За основание системы можно принять любое натуральное число два, три, четыре и т.д. Следовательно, возможно бесчисленное множество позиционных систем: двоичная, троичная, четверичная и т.д. Запись чисел в каждой из систем счисления с основанием q означает сокращенную запись выражения
an-1 qn-1 + an-2 qn-2+ ... + a1 q1 + a0 q0 + a-1 q-1 + ... + a-m q-m,
где ai цифры системы счисления; n и m число целых и дробных разрядов, соответственно.
Например:
В каждой системе счисления цифры упорядочены в соответствии с их значениями: 1 больше 0, 2 больше 1 и т.д.
Продвижением цифры называют замену её следующей по величине. |
Продвинуть цифру 1 значит заменить её на 2, продвинуть цифру 2 значит заменить её на 3 и т.д. Продвижение старшей цифры (например, цифры 9 в десятичной системе) означает замену её на 0. В двоичной системе, использующей только две цифры 0 и 1, продвижение 0 означает замену его на 1, а продвижение 1 замену её на 0.
Целые числа в любой системе счисления порождаются с помощью Правила счета [44]:
Для образования целого числа, следующего за любым данным целым числом, нужно продвинуть самую правую цифру числа; если какая-либо цифра после продвижения стала нулем, то нужно продвинуть цифру, стоящую слева от неё. |
Применяя это правило, запишем первые десять целых чисел
Кроме десятичной широко используются системы с основанием, являющимся целой степенью числа 2, а именно:
Полезно запомнить запись в этих системах счисления первых двух десятков целых чисел:
10 - я 2 - я 8 - я 16 - я 0 0 0 0 1 1 1 1 2 10 2 2 3 11 3 3 4 100 4 4 5 101 5 5 6 110 6 6 7 111 7 7 8 1000 10 8 9 1001 11 9 |
10 - я 2 - я 8 - я 16 - я 10 1010 12 A 11 1011 13 B 12 1100 14 C 13 1101 15 D 14 1110 16 E 15 1111 17 F 16 10000 20 10 17 10001 21 11 18 10010 22 12 19 10011 23 13 |
Из всех систем счисления особенно проста и поэтому интересна для технической реализации в компьютерах двоичная система счисления.
Люди предпочитают десятичную систему, вероятно, потому, что с древних времен считали по пальцам, а пальцев у людей по десять на руках и ногах. Не всегда и не везде люди пользуются десятичной системой счисления. В Китае, например, долгое время пользовались пятеричной системой счисления.
А компьютеры используют двоичную систему потому, что она имеет ряд преимуществ перед другими системами:
Недостаток двоичной системы быстрый рост числа разрядов, необходимых для записи чисел.
Двоичная система, удобная для компьютеров, для человека неудобна из-за ее громоздкости и непривычной записи.
Перевод чисел из десятичной системы в двоичную и наоборот выполняет машина. Однако, чтобы профессионально использовать компьютер, следует научиться понимать слово машины. Для этого и разработаны восьмеричная и шестнадцатеричная системы.
Числа в этих системах читаются почти так же легко, как десятичные, требуют соответственно в три (восьмеричная) и в четыре (шестнадцатеричная) раза меньше разрядов, чем в двоичной системе (ведь числа 8 и 16 соответственно, третья и четвертая степени числа 2).
Перевод восьмеричных и шестнадцатеричных чисел в двоичную систему очень прост: достаточно каждую цифру заменить эквивалентной ей двоичной триадой (тройкой цифр) или тетрадой (четверкой цифр). |
Например:
Чтобы перевести число из двоичной системы в восьмеричную или шестнадцатеричную, его нужно разбить влево и вправо от запятой на триады (для восьмеричной) или тетрады (для шестнадцатеричной) и каждую такую группу заменить соответ-ствующей восьмеричной (шестнадцатеричной) цифрой. |
Например,
При переводе целого десятичного числа в систему с основанием q его необходимо последовательно делить на q до тех пор, пока не останется остаток, меньший или равный q1. Число в системе с основанием q записывается как последо-вательность остатков от деления, записанных в обратном порядке, начиная с последнего. |
Пример: Перевести число 75 из десятичной системы в двоичную, восьмеричную и шестнадцатеричную:
Ответ: 7510 = 1 001 0112 = 1138 = 4B16.
Пpи переводе правильной десятичной дpоби в систему счисления с основанием q необходимо сначала саму дробь, а затем дробные части всех последующих произведений последовательно умножать на q, отделяя после каждого умножения целую часть пpоизведения. Число в новой системе счисления записывается как последовательность полученных целых частей пpоизведения. |
Умножение пpоизводится до тех поp, пока дpобная часть пpоизведения не станет pавной нулю. Это значит, что сделан точный пеpевод. В пpотивном случае пеpевод осуществляется до заданной точности. Достаточно того количества цифp в pезультате, котоpое поместится в ячейку.
Пример: Перевести число 0,35 из десятичной системы в двоичную, восьмеричную и шестнадцатеричную:
Ответ: 0,3510 = 0,010112 = 0,2638 = 0,5916 .
При переводе числа из двоичной (восьмеричной, шестнадцатеричной) системы в десятичную надо это число представить в виде суммы степеней основания его системы счисления. |
Примеpы:
Рассмотрим только те системы счисления, которые применяются в компьютерах десятичную, двоичную, восьмеричную и шестнадцатеричную.
Для определенности возьмем произвольное десятичное число, например 46, и для него выполним все возможные последовательные переводы из одной системы счисления в другую.
Порядок переводов определим в соответствии с рисунком:
На этом рисунке использованы следующие обозначения:
Например: означает перевод из двоичной системы в шестнадцатеричную, имеющий в таблице порядковый номер 6.
Сводная таблица переводов целых чисел
Таблица 4.1.
Рассмотрим основные арифметические операции: сложение, вычитание, умножение и деление. Правила выполнения этих операций в десятичной системе хорошо известны это сложение, вычитание, умножение столбиком и деление углом. Эти правила применимы и ко всем другим позиционным системам счисления. Только таблицами сложения и умножения надо пользоваться особыми для каждой системы.
Сложение
Таблицы сложения легко составить, используя Правило Счета.
Сложение в двоичной системе |
Сложение в восьмеричной системе |
Сложение в шестнадцатиричной системе
При сложении цифры суммируются по разрядам, и если при этом возникает избыток, то он переносится влево.
Пример 1. Сложим числа 15 и 6 в различных системах счисления.
Шестнадцатеричная: F16+616
|
Ответ: 15+6 = 2110 = 101012 = 258 = 1516. Проверка. Преобразуем полученные суммы к десятичному виду: |
Пример 2. Сложим числа 15, 7 и 3.
Шестнадцатеричная: F16+716+316
|
Ответ: 5+7+3 = 2510 = 110012 = 318 = 1916. Проверка:
|
Пример 3. Сложим числа 141,5 и 59,75.
Ответ: 141,5 + 59,75 = 201,2510 = 11001001,012 = 311,28 = C9,416
Проверка. Преобразуем полученные суммы к десятичному виду:
11001001,012 = 27 + 26 + 23 + 20 + 2-2 = 201,25
311,28 = 3*82 + 1•81 + 1*80 + 2*8-1 = 201,25
C9,416 = 12*161 + 9*160 + 4*16-1 = 201,25
Вычитание
Пример 4. Вычтем единицу из чисел 102, 108 и 1016
Пример 5. Вычтем единицу из чисел 1002, 1008 и 10016.
Пример 6. Вычтем число 59,75 из числа 201,25.
Ответ: 201,2510 59,7510 = 141,510 = 10001101,12 = 215,48 = 8D,816.
Проверка. Преобразуем полученные разности к десятичному виду:
10001101,12 = 27 + 23 + 22 + 20 + 21 = 141,5;
215,48 = 2*82 + 1*81 + 5*80 + 4*81 = 141,5;
8D,816 = 8*161 + D*160 + 8*161 = 141,5.
Умножение
Выполняя умножение многозначных чисел в различных позиционных системах счисления, можно использовать обычный алгоритм перемножения чисел в столбик, но при этом результаты перемножения и сложения однозначных чисел необходимо заимствовать из соответствующих рассматриваемой системе таблиц умножения и сложения.
Умножение в двоичной системе |
Умножение в восьмеричной системе |
Ввиду чрезвычайной простоты таблицы умножения в двоичной системе, умножение сводится лишь к сдвигам множимого и сложениям.
Пример 7. Перемножим числа 5 и 6.
Ответ: 5*6 = 3010 = 111102 = 368.
Проверка. Преобразуем полученные произведения к десятичному виду:
111102 = 24 + 23 + 22 + 21 = 30;
368 = 3•81 + 6•80 = 30.
Пример 8. Перемножим числа 115 и 51.
Ответ: 115*51 = 586510 = 10110111010012 = 133518.
Проверка. Преобразуем полученные произведения к десятичному виду:
10110111010012 = 212 + 210 + 29 + 27 + 26 + 25 + 23 + 20 = 5865;
133518 = 1*84 + 3*83 + 3*82 + 5*81 + 1*80 = 5865.
Деление
Деление в любой позиционной системе счисления производится по тем же правилам, как и деление углом в десятичной системе. В двоичной системе деление выполняется особенно просто, ведь очередная цифра частного может быть только нулем или единицей.
Пример 9. Разделим число 30 на число 6.
Ответ: 30 : 6 = 510 = 1012 = 58.
Пример 10. Разделим число 5865 на число 115.
Восьмеричная: 133518 :1638
Ответ: 5865 : 115 = 5110 = 1100112 = 638.
Проверка. Преобразуем полученные частные к десятичному виду:
1100112 = 25 + 24 + 21 + 20 = 51; 638 = 6*81 + 3*80 = 51.
Пример 11. Разделим число 35 на число 14.
Восьмеричная: 438 : 168
Ответ: 35 : 14 = 2,510 = 10,12 = 2,48.
Проверка. Преобразуем полученные частные к десятичному виду:
10,12 = 21 + 2 -1 = 2,5;
2,48 = 2*80 + 4*8-1 = 2,5.
Целые числа могут представляться в компьютере со знаком или без знака.
Целые числа без знака обычно занимают в памяти один или два байта и принимают в однобайтовом формате значения от 000000002 до 111111112 , а в двубайтовом формате от 00000000 000000002 до 11111111 111111112.
Диапазоны значений целых чисел без знака
Формат числа в байтах |
Диапазон |
|
Запись с порядком |
Обычная запись |
|
1 |
0 ... 281 |
0 ... 255 |
2 |
0 ... 2161 |
0 ... 65535 |
Примеры:
а) число 7210 = 10010002 в однобайтовом формате:
б) это же число в двубайтовом формате:
в) число 65535 в двубайтовом формате:
Целые числа со знаком обычно занимают в памяти компьютера один, два или четыре байта, при этом самый левый (старший) разряд содержит информацию о знаке числа. Знак “плюс” кодируется нулем, а “минус” единицей.
Диапазоны значений целых чисел со знаком
Формат числа в байтах |
Диапазон |
|
Запись с порядком |
Обычная запись |
|
1 |
27 ... 271 |
128 ... 127 |
2 |
215 ... 2151 |
32768 ... 32767 |
4 |
231 ... 2311 |
2147483648 ... 2147483647 |
Рассмотрим особенности записи целых чисел со знаком на примере однобайтового формата, при котором для знака отводится один разряд, а для цифр абсолютной величины семь разрядов.
В компьютерной технике применяются три формы записи (кодирования) целых чисел со знаком: прямой код, обратный код, дополнительный код. |
Последние две формы применяются особенно широко, так как позволяют упростить конструкцию арифметико-логического устройства компьютера путем замены разнообразных арифметических операций операцией cложения.
Положительные числа в прямом, обратном и дополнительном кодах изображаются одинаково двоичными кодами с цифрой 0 в знаковом разряде. Например:
Отрицательные числа в прямом, обратном и дополнительном кодах имеют разное изображение.
1. Прямой код. В знаковый разряд помещается цифра 1, а в разряды цифровой части числа двоичный код его абсолютной величины. Например:
2. Обратный код. Получается инвертированием всех цифр двоичного кода абсолютной величины числа, включая разряд знака: нули заменяются единицами, а единицы нулями. Например:
3. Дополнительный код. Получается образованием обратного кода с последующим прибавлением единицы к его младшему разряду. Например:
Обычно отрицательные десятичные числа при вводе в машину автоматически преобразуются в обратный или дополнительный двоичный код и в таком виде хранятся, перемещаются и участвуют в операциях. При выводе таких чисел из машины происходит обратное преобразование в отрицательные десятичные числа. |
Сложение и вычитание
В большинстве компьютеров операция вычитания не используется. Вместо нее производится сложение уменьшаемого с обратным или дополнительным кодом вычитаемого. Это позволяет существенно упростить конструкцию АЛУ. |
При сложении обратных кодов чисел А и В имеют место четыре основных и два особых случая:
1. А и В положительные. При суммировании складываются все разряды, включая разряд знака. Так как знаковые разряды положительных слагаемых равны нулю, разряд знака суммы тоже равен нулю. Например:
Получен правильный результат.
2. А положительное, B отрицательное и по абсолютной величине больше, чем А. Например:
Получен правильный результат в обратном коде. При переводе в прямой код биты цифровой части результата инвертируются: 1 0000111 = 710.
3. А положительное, B отрицательное и по абсолютной величине меньше, чем А. Например:
Компьютер исправляет полученный первоначально неправильный результат (6 вместо 7) переносом единицы из знакового разряда в младший разряд суммы.
4. А и В отрицательные. Например:
Полученный первоначально неправильный результат (обратный код числа 1110 вместо обратного кода числа 1010) компьютер исправляет переносом единицы из знакового разряда в младший разряд суммы.
При переводе результата в прямой код биты цифровой части числа инвертируются: 1 0001010 = 1010.
При сложении может возникнуть ситуация, когда старшие разряды результата операции не помещаются в отведенной для него области памяти. Такая ситуация называется переполнением разрядной сетки формата числа. Для обнаружения переполнения и оповещения о возникшей ошибке в компьютере используются специальные средства. Ниже приведены два возможных случая переполнения.
5. А и В положительные, сумма А+В больше, либо равна 2n1, где n количество разрядов формата чисел (для однобайтового формата n=8, 2n1 = 27 = 128). Например:
Семи разрядов цифровой части числового формата недостаточно для размещения восьмиразрядной суммы (16210 = 101000102), поэтому старший разряд суммы оказывается в знаковом разряде. Это вызывает несовпадение знака суммы и знаков слагаемых, что является свидетельством переполнения разрядной сетки.
6. А и В отрицательные, сумма абсолютных величин А и В больше, либо равна 2n1. Например:
Здесь знак суммы тоже не совпадает со знаками слагаемых, что свидетельствует о переполнении разрядной сетки.
Все эти случаи имеют место и при сложении дополнительных кодов чисел:
1. А и В положительные. Здесь нет отличий от случая 1, рассмотренного для обратного кода.
2. А положительное, B отрицательное и по абсолютной величине больше, чем А. Например:
Получен правильный результат в дополнительном коде. При переводе в прямой код биты цифровой части результата инвертируются и к младшему разряду прибавляется единица: 1 0000110 + 1 = 1 0000111 = 710.
3. А положительное, B отрицательное и по абсолютной величине меньше, чем А. Например:
Получен правильный результат. Единицу переноса из знакового разряда компьютер отбрасывает.
4. А и В отрицательные. Например:
Получен правильный результат в дополнительном коде. Единицу переноса из знакового разряда компьютер отбрасывает.
Случаи переполнения для дополнительных кодов рассматриваются по аналогии со случаями 5 и 6 для обратных кодов.
Сравнение рассмотренных форм кодирования целых чисел со знаком показывает:
Умножение и деление
Во многих компьютерах умножение производится как последовательность сложений и сдвигов. Для этого в АЛУ имеется регистр, называемый накапливающим сумматором, который до начала выполнения операции содержит число ноль. В процессе выполнения операции в нем поочередно размещаются множимое и результаты промежуточных сложений, а по завершении операции окончательный результат.
Другой регистр АЛУ, участвующий в выполнении этой операции, вначале содержит множитель. Затем по мере выполнения сложений содержащееся в нем число уменьшается, пока не достигнет нулевого значения.
Для иллюстрации умножим 1100112 на 1011012.
Деление для компьютера является трудной операцией. Обычно оно реализуется путем многократного прибавления к делимому дополнительного кода делителя.
Вещественными числами (в отличие от целых) в компьютерной технике называются числа, имеющие дробную часть. |
При их написании вместо запятой принято писать точку. Так, например, число 5 целое, а числа 5.1 и 5.0 вещественные.
Для удобства отображения чисел, принимающих значения из достаточно широкого диапазона (то есть, как очень маленьких, так и очень больших), используется форма записи чисел с порядком основания системы счисления. Например, десятичное число 1.25 можно в этой форме представить так:
1.25*100 = 0.125*101 = 0.0125*102 = ... ,
или так:
12.5*101 = 125.0*102 = 1250.0*103 = ... .
Любое число N в системе счисления с основанием q можно записать в виде N = M * qp, где M называется мантиссой числа, а p порядком. Такой способ записи чисел называется представлением с плавающей точкой. |
Если “плавающая” точка расположена в мантиссе перед первой значащей цифрой, то при фиксированном количестве разрядов, отведённых под мантиссу, обеспечивается запись максимального количества значащих цифр числа, то есть максимальная точность представления числа в машине. Из этого следует:
Мантисса должна быть правильной дробью, первая цифра которой отлична от нуля: M из [0.1, 1). |
Такое, наиболее выгодное для компьютера, представление вещественных чисел называется нормализованным.
Мантиссу и порядок q-ичного числа принято записывать в системе с основанием q, а само основание в десятичной системе.
Примеры нормализованного представления:
Десятичная система Двоичная система
753.15 = 0.75315*103; -101.01 = -0.10101*211 (порядок 112 = 310)
-0.000034 = -0.34*10-4; -0.000011 = 0.11*2-100 (порядок -1002 = -410)
Вещественные числа в компьютерах различных типов записываются по-разному. При этом компьютер обычно предоставляет программисту возможность выбора из нескольких числовых форматов наиболее подходящего для конкретной задачи с использованием четырех, шести, восьми или десяти байтов.
В качестве примера приведем характеристики форматов вещественных чисел, используемых IBM-совместимыми персональными компьютерами:
Форматы вещественных чисел |
Размер в байтах |
Примерный диапазон абсолютных значений |
Количество значащих десятичных цифр |
Одинарный |
4 |
1045 … 1038 |
7 или 8 |
Вещественный |
6 |
1039 … 1038 |
11 или 12 |
Двойной |
8 |
10324 … 10308 |
15 или 16 |
Расширенный |
10 |
104932 … 104932 |
19 или 20 |
Из этой таблицы видно, что форма представления чисел с плавающей точкой позволяет записывать числа с высокой точностью и из весьма широкого диапазона.
При хранении числа с плавающей точкой отводятся разряды для мантиссы, порядка, знака числа и знака порядка:
· Чем больше разрядов отводится под запись мантиссы, тем выше точность представления числа. · Чем больше разрядов занимает порядок, тем шире диапазон от наименьшего отличного от нуля числа до наибольшего числа, представимого в машине при заданном формате. |
Покажем на примерах, как записываются некоторые числа в нормализованном виде в четырехбайтовом формате с семью разрядами для записи порядка.
1. Число 6.2510 = 110.012 = 0,11001•211 :
2. Число 0.12510 = 0.0012 = 0.1*210 (отрицательный порядок записан в дополнительном коде):
К началу выполнения арифметического действия операнды операции помещаются в соответствующие регистры АЛУ.
Сложение и вычитание
При сложении и вычитании сначала производится подготовительная операция, называемая выравниванием порядков.
В процессе выравнивания порядков мантисса числа с меньшим порядком сдвигается в своем регистре вправо на количество разрядов, равное разности порядков операндов. После каждого сдвига порядок увеличивается на единицу. |
В результате выравнивания порядков одноименные разряды чисел оказываются расположенными в соответствующих разрядах обоих регистров, после чего мантиссы складываются или вычитаются.
В случае необходимости полученный результат нормализуется путем сдвига мантиссы результата влево. После каждого сдвига влево порядок результата уменьшается на единицу.
Пример 1. Сложить двоичные нормализованные числа 0.10111•21 и 0.11011*210. Разность порядков слагаемых здесь равна трем, поэтому перед сложением мантисса первого числа сдвигается на три разряда вправо:
Пример 2. Выполнить вычитание двоичных нормализованных чисел 0.10101*210 и 0.11101*21. Разность порядков уменьшаемого и вычитаемого здесь равна единице, поэтому перед вычитанием мантисса второго числа сдвигается на один разряд вправо:
Результат получился не нормализованным, поэтому его мантисса сдвигается влево на два разряда с соответствующим уменьшением порядка на две единицы: 0.1101*20.
Умножение
При умножении двух нормализованных чисел их порядки складываются, а мантиссы перемножаются. |
Пример 3. Выполнить умножение двоичных нормализованных чисел:
(0.11101*2101)*(0.1001*211) = (0.11101*0.1001)* 2(101+11) = 0.100000101*21000.
Деление
При делении двух нормализованных чисел из порядка делимого вычитается порядок делителя, а мантисса делимого делится на мантиссу делителя. Затем в случае необходимости полученный результат нормализуется. |
Пример 4. Выполнить деление двоичных нормализованных чисел:
0.1111*2100 : 0.101*211 = (0.1111 : 0.101) * 2(10011) = 1.1*21 = 0.11•210.
Использование представления чисел с плавающей точкой существенно усложняет схему арифметико-логического устройства.
4.1. Используя Правило Счета, запишите первые 20 целых чисел в десятичной, двоичной, троичной, пятеричной и восьмеричной системах счисления.
[ Ответ ]
4.2. Какие целые числа следуют за числами:
а) 12; |
е) 18; |
п) F16; |
б) 1012; |
ж) 78; |
м) 1F16; |
в) 1112; |
з) 378; |
н) FF16; |
г) 11112; |
и) 1778; |
о) 9AF916; |
д) 1010112; |
к) 77778; |
п) CDEF16 ? |
[ Ответ ]
4.3. Какие целые числа предшествуют числам:
а) 102; |
е) 108; |
л) 1016; |
б) 10102; |
ж) 208; |
м)2016; |
в) 10002; |
з) 1008; |
н) 10016; |
г) 100002; |
и) 1108; |
о) A1016; |
д) 101002; |
к) 10008; |
п) 100016 ? |
[ Ответ ]
4.4. Какой цифрой заканчивается четное двоичное число? Какой цифрой заканчивается нечетное двоичное число? Какими цифрами может заканчиваться четное троичное число?
[ Ответ ]
4.5. Какое наибольшее десятичное число можно записать тремя цифрами:
[ Ответ ]
4.6. В какой системе счисления 21 + 24 = 100?
Решение. Пусть x искомое основание системы счисления. Тогда 100x = 1 · x2 + 0 · x1 + 0 · x0, 21x = 2 · x1 + 1 · x0, 24x = 2 · x1 + 4 · x0. Таким образом, x2 = 2x + 2x + 5 или x2 - 4x - 5 = 0. Положительным корнем этого квадратного уравнения является x = 5.
Ответ. Числа записаны в пятеричной системе счисления.
4.7. В какой системе счисления справедливо следующее:
[ Ответ ]
4.8. Десятичное число 59 эквивалентно числу 214 в некоторой другой системе счисления. Найдите основание этой системы.
[ Ответ ]
4.9. Переведите числа в десятичную систему, а затем проверьте результаты, выполнив обратные переводы:
а) 10110112; |
е) 5178; |
л) 1F16; |
б) 101101112; |
ж) 10108; |
м) ABC16; |
в) 0111000012; |
з) 12348; |
н) 101016; |
г) 0,10001102; |
и) 0,348; |
о) 0,А416; |
д) 110100,112; |
к) 123,418; |
п) 1DE,C816. |
[ Ответ ]
4.10. Переведите числа из десятичной системы в двоичную, восьмеричную и шестнадцатеричную, а затем проверьте результаты, выполнив обратные переводы:
а) 12510; б) 22910; в) 8810; г) 37,2510; д) 206,12510.
[ Ответ ]
4.11. Переведите числа из двоичной системы в восьмеричную и шестнадцатеричную, а затем проверьте результаты, выполнив обратные переводы:
а) 1001111110111,01112; |
г) 1011110011100,112; |
б) 1110101011,10111012; |
д) 10111,11111011112; |
в) 10111001,1011001112; |
е) 1100010101,110012. |
[ Ответ ]
4.12. Переведите в двоичную и восьмеричную системы шестнадцатеричные числа:
а) 2СE16; б) 9F4016; в) ABCDE16; г) 1010,10116; д) 1ABC,9D16.
[ Ответ ]
4.13. Выпишите целые числа:
[ Ответ ]
4.14. Для десятичных чисел 47 и 79 выполните цепочку переводов из одной системы счисления в другую:
[ Ответ ]
4.15. Составьте таблицы сложения однозначных чисел в троичной и пятеричной системах счисления.
[ Ответ ]
4.16. Составьте таблицы умножения однозначных чисел в троичной и пятеричной системах счисления.
[ Ответ ]
4.17. Сложите числа, а затем проверьте результаты, выполнив соответствующие десятичные сложения:
а) 10111012 и 11101112; |
д) 378 и 758; |
и) A16 и F16; |
б) 1011,1012 и 101,0112; |
е) 1658 и 378; |
к) 1916 и C16; |
в) 10112, 112 и 111,12; |
ж) 7,58 и 14,68; |
л) A,B16 и E,F16; |
г) 10112 , 11,12 и 1112; |
з) 68, 178 и 78; |
м) E16, 916 и F16. |
[ Ответ ]
4.18. В каких системах счисления выполнены следующие сложения? Найдите основания каждой системы:
[ Ответ ]
4.19. Найдите те подстановки десятичных цифр вместо букв, которые делают правильными выписанные результаты (разные цифры замещаются разными буквами):
[ Ответ ]
4.20. Вычтите:
а) 1112 из 101002; |
д) 158 из 208; |
и) 1А16 из 3116; |
б) 10,112 из 100,12; |
е) 478 из 1028; |
к) F9E16 из 2А3016; |
в) 111,12 из 100102; |
ж) 56,78 из 1018; |
л) D,116 из B,9216; |
г) 100012 из 1110,112; |
з) 16,548 из 30,018; |
м) ABC16 из 567816. |
[ Ответ ]
4.21. Перемножьте числа, а затем проверьте результаты, выполнив соответствующие десятичные умножения:
а) 1011012 и 1012; |
д) 378 и 48; |
б) 1111012 и 11,012; |
е) 168 и 78; |
в) 1011,112 и 101,12; |
ж) 7,58 и 1,68; |
г) 1012 и 1111,0012; |
з) 6,258 и 7,128. |
[ Ответ ]
4.22. Разделите 100101102 на 10102 и проверьте результат, умножая делитель на частное.
[ Ответ ]
4.23. Разделите 100110101002 на 11002 и затем выполните соответствующее десятичное и восьмеричное деление.
[ Ответ ]
4.24. Вычислите значения выражений:
[ Ответ ]
4.25. Расположите следующие числа в порядке возрастания:
[ Ответ ]
4.26. Запишите уменьшающийся ряд чисел +3, +2, ..., -3 в однобайтовом формате:
[ Ответ ]
4.27. Запишите числа в прямом коде (формат 1 байт):
а) 31; б) -63; в) 65; г) -128.
[ Ответ ]
4.28. Запишите числа в обратном и дополнительном кодах (формат 1 байт):
а) -9; б) -15; в) -127; г) -128.
[ Ответ ]
4.29. Найдите десятичные представления чисел, записанных в дополнительном коде:
а) 1 1111000; б) 1 0011011; в) 1 1101001; г) 1 0000000.
[ Ответ ]
4.30. Найдите десятичные представления чисел, записанных в обратном коде:
а) 1 1101000; б) 1 0011111; в) 1 0101011; г) 1 0000000.
[ Ответ ]
4.31. Выполните вычитания чисел путем сложения их обратных (дополнительных) кодов в формате 1 байт. Укажите, в каких случаях имеет место переполнение разрядной сетки:
а) 9 - 2; |
г) -20 - 10; |
ж) -120 - 15; |
б) 2 - 9; |
д) 50 - 25; |
з) -126 - 1; |
в) -5 - 7; |
е) 127 - 1; |
и) -127 - 1. |
[ Ответ ]
***********************************
Алгебра логики это математический аппарат, с помощью которого записывают, вычисляют, упрощают и преобразовывают логические высказывания. |
Создателем алгебры логики является живший в ХIХ веке английский математик Джордж Буль, в честь которого эта алгебра названа булевой алгеброй высказываний.
Что же такое логическое высказывание?
Логическое высказывание это любoе повествовательное пpедлoжение, в oтнoшении кoтopoгo мoжно oднoзначнo сказать, истиннo oнo или лoжнo. |
Джордж Буль
Так, например, предложение “6 четное число” следует считать высказыванием, так как оно истинное. Предложение “Рим столица Франции” тоже высказывание, так как оно ложное.
Разумеется, не всякое предложение является логическим высказыванием. Высказываниями не являются, например, предложения “ученик десятого класса” и “информатика интересный предмет”. Первое предложение ничего не утверждает об ученике, а второе использует слишком неопределённое понятие “интересный предмет”. Вопросительные и восклицательные предложения также не являются высказываниями, поскольку говорить об их истинности или ложности не имеет смысла.
Предложения типа “в городе A более миллиона жителей”, “у него голубые глаза” не являются высказываниями, так как для выяснения их истинности или ложности нужны дополнительные сведения: о каком конкретно городе или человеке идет речь. Такие предложения называются высказывательными формами.
Высказывательная форма это повествовательное предложение, которое прямо или косвенно содержит хотя бы одну переменную и становится высказыванием, когда все переменные замещаются своими значениями. |
Алгебра логики рассматривает любое высказывание только с одной точки зрения является ли оно истинным или ложным. Заметим, что зачастую трудно установить истинность высказывания. Так, например, высказывание “площадь поверхности Индийского океана равна 75 млн кв. км” в одной ситуации можно посчитать ложным, а в другой истинным. Ложным так как указанное значение неточное и вообще не является постоянным. Истинным если рассматривать его как некоторое приближение, приемлемое на практике.
Употребляемые в обычной речи слова и словосочетания "не”, “и”, “или”, “если... , то”, “тогда и только тогда” и другие позволяют из уже заданных высказываний строить новые высказывания. Такие слова и словосочетания называются логическими связками.
Bысказывания, образованные из других высказываний с помощью логических связок, называются составными. Высказывания, не являющиеся составными, называются элементарными.
Так, например, из элементарных высказываний “Петров врач”, “Петров шахматист” при помощи связки “и” можно получить составное высказывание “Петров врач и шахматист”, понимаемое как “Петров врач, хорошо играющий в шахматы”.
При помощи связки “или” из этих же высказываний можно получить составное высказывание “Петров врач или шахматист”, понимаемое в алгебре логики как “Петров или врач, или шахматист, или и врач и шахматист одновременно”.
Истинность или ложность получаемых таким образом составных высказываний зависит от истинности или ложности элементарных высказываний.
Чтобы обращаться к логическим высказываниям, им назначают имена. Пусть через А обозначено высказывание “Тимур поедет летом на море”, а через В высказывание “Тимур летом отправится в горы”. Тогда составное высказывание “Тимур летом побывает и на море, и в горах” можно кратко записать как А и В. Здесь “и” логическая связка, А, В логические переменные, которые мoгут принимать только два значения “истина” или “ложь”, обозначаемые, соответственно, “1” и “0”
Каждая логическая связка рассматривается как операция над логическими высказываниями и имеет свое название и обозначение:
(1) Операция, выражаемая словом “не”, называется отрицанием и обозначается чертой над высказыванием (или знаком щ ). Высказывание истинно, когда A ложно, и ложно, когда A истинно. Пример. “Луна спутник Земли” (А); “Луна не спутник Земли” ().
(2) Операция, выражаемая связкой “и”, называется конъюнкцией (лат. conjunctio соединение) или логическим умножением и обозначается точкой "•" (может также обозначаться знаками Щ или &). Высказывание А•В истинно тогда и только тогда, когда оба высказывания А и В истинны. Например, высказывание
“10 делится на 2 и 5 больше 3”
истинно, а высказывания
“10 делится на 2 и 5 не больше 3”,
“10 не делится на 2 и 5 больше 3”,
“10 не делится на 2 и 5 не больше 3”
ложны.
(3) Операция, выражаемая связкой “или” (в неразделительном, неисключающем смысле этого слова), называется дизъюнкцией (лат. disjunctio разделение) или логическим сложением и обозначается знаком v (или плюсом). Высказывание А v В ложно тогда и только тогда, когда оба высказывания А и В ложны. Например, высказывание
“10 не делится на 2 или 5 не больше 3”
ложно, а высказывания
“10 делится на 2 или 5 больше 3”,
“10 делится на 2 или 5 не больше 3”,
“10 не делится на 2 или 5 больше 3”
истинны.
(4) Операция, выражаемая связками “если ..., то”, “из ... следует”, “... влечет ...”, называется импликацией (лат. implico тесно связаны) и обозначается знаком ®. Высказывание А ® В ложно тогда и только тогда, когда А истинно, а В ложно.
Каким же образом импликация связывает два элементарных высказывания? Покажем это на примере высказываний: “данный четырёхугольник квадрат” (А) и “около данного четырёхугольника можно описать окружность” (В). Рассмотрим составное высказывание А ® В, понимаемое как “если данный четырёхугольник квадрат, то около него можно описать окружность”. Есть три варианта, когда высказывание А ®В истинно:
Ложен только один вариант: А истинно и В ложно, то есть данный четырёхугольник является квадратом, но около него нельзя описать окружность.
В обычной речи связка “если ..., то” описывает причинно-следственную связь между высказываниями. Но в логических операциях смысл высказываний не учитывается. Рассматривается только их истинность или ложность. Поэтому не надо смущаться “бессмысленностью” импликаций, образованных высказываниями, совершенно не связанными по содержанию. Например, такими:
“если президент США демократ, то в Африке водятся жирафы”,
“если арбуз ягода, то в бензоколонке есть бензин”.
(5) Операция, выражаемая связками “тогда и только тогда”, "необходимо и достаточно”, “... равносильно ...”, называется эквиваленцией или двойной импликацией и обозначается знаком « или ~ . Высказывание А « В истинно тогда и только тогда, когда значения А и В совпадают.
Например, высказывания
“24 делится на 6 тогда и только тогда, когда 24 делится на 3”,
“23 делится на 6 тогда и только тогда, когда 23 делится на 3”
истинны, а высказывания
“24 делится на 6 тогда и только тогда, когда 24 делится на 5”,
“21 делится на 6 тогда и только тогда, когда 21 делится на 3”
ложны.
Высказывания А и В, образующие составное высказывание А « В, могут быть совершенно не связаны по содержанию, например: “три больше двух” (А), “пингвины живут в Антарктиде” (В). Отрицаниями этих высказываний являются высказывания “три не больше двух” (), “пингвины не живут в Антарктиде” (). Образованные из высказываний А, В составные высказывания A«B и « истинны, а высказывания A«и «B ложны.
Итак, нами рассмотрены пять логических операций: отрицание, конъюнкция, дизъюнкция, импликация и эквиваленция.
Импликацию можно выразить через дизъюнкцию и отрицание: А ® В = v В. Эквиваленцию можно выразить через отрицание, дизъюнкцию и конъюнкцию: А « В = (v В) • (v А). |
Таким образом, операций отрицания, дизъюнкции и конъюнкции достаточно, чтобы описывать и обрабатывать логические высказывания.
Порядок выполнения логических операций задается круглыми скобками. Но для уменьшения числа скобок договорились считать, что сначала выполняется операция отрицания (“не”), затем конъюнкция (“и”), после конъюнкции дизъюнкция (“или”) и в последнюю очередь импликация.
С помощью логических переменных и символов логических операций любое высказывание можно формализовать, то есть заменить логической формулой.
Определение логической формулы:
|
В п. 1 определены элементарные формулы; в п. 2 даны правила образования из любых данных формул новых формул.
В качестве примера рассмотрим высказывание “если я куплю яблоки или абрикосы, то приготовлю фруктовый пирог”. Это высказывание формализуется в виде (A v B) ® C; такая же формула соответствует высказыванию “если Игорь знает английский или японский язык, то он получит место переводчика”.
Как показывает анализ формулы (A v B) ® C , при определённых сочетаниях значений переменных A, B и C она принимает значение “истина”, а при некоторых других сочетаниях значение “ложь” (разберите самостоятельно эти случаи). Такие формулы называются выполнимыми.
Некоторые формулы принимают значение “истина” при любых значениях истинности входящих в них переменных. Таковой будет, например, формула А v, соответствующая высказыванию “Этот треугольник прямоугольный или косоугольный”. Эта формула истинна и тогда, когда треугольник прямоугольный, и тогда, когда треугольник не прямоугольный. Такие формулы называются тождественно истинными формулами или тавтологиями. Высказывания, которые формализуются тавтологиями, называются логически истинными высказываниями.
В качестве другого примера рассмотрим формулу А •, которой соответствует, например, высказывание “Катя самая высокая девочка в классе, и в классе есть девочки выше Кати”. Очевидно, что эта формула ложна, так как либо А, либо обязательно ложно. Такие формулы называются тождественно ложными формулами или противоречиями. Высказывания, которые формализуются противоречиями, называются логически ложными высказываниями.
Если две формулы А и В “одновременно”, то есть при одинаковых наборах значений входящих в них переменных, принимают одинаковые значения, то они называются равносильными.
Равносильность двух формул алгебры логики обозначается символом “=” или символом “є”. Замена формулы другой, ей равносильной, называется равносильным преобразованием данной формулы.
Математический аппарат алгебры логики очень удобен для описания того, как функционируют аппаратные средства компьютера, поскольку основной системой счисления в компьютере является двоичная, в которой используются цифры 1 и 0, а значений логических переменных тоже два: “1” и “0”.
Из этого следует два вывода:
Данные и команды представляются в виде двоичных последовательностей различной структуры и длины.
Существуют различные физические способы кодирования двоичной информации, но чаще всего единица кодируется более высоким уровнем напряжения, чем ноль (или наоборот), например:
Логический элемент компьютера это часть электронной логичеcкой схемы, которая реализует элементарную логическую функцию. |
Логическими элементами компьютеров являются электронные схемы И, ИЛИ, НЕ, И-НЕ, ИЛИ-НЕ и другие (называемые также вентилями), а также триггер.
С помощью этих схем можно реализовать любую логическую функцию, описывающую работу устройств компьютера. Обычно у вентилей бывает от двух до восьми входов и один или два выхода.
Чтобы представить два логических состояния “1” и “0” в вентилях, соответствующие им входные и выходные сигналы имеют один из двух установленных уровней напряжения. Например, +5 вольт и 0 вольт.
Высокий уровень обычно соответствует значению “истина” (“1”), а низкий значению “ложь” (“0”).
Каждый логический элемент имеет свое условное обозначение, которое выражает его логическую функцию, но не указывает на то, какая именно электронная схема в нем реализована. Это упрощает запись и понимание сложных логических схем.
Работу логических элементов описывают с помощью таблиц истинности.
Таблица истинности это табличное представление логической схемы (операции), в котором перечислены все возможные сочетания значений истинности входных сигналов (операндов) вместе со значением истинности выходного сигнала (результата операции) для каждого из этих сочетаний. |
С х е м а И
Схема И реализует конъюнкцию двух или более логических значений.
Условное обозначение на структурных схемах схемы И с двумя входами представлено на рис. 5.1. Таблица истинности в таблице 5.1.
Рис. 5.1
Таблица 5.1
x |
y |
xЧy |
0 |
0 |
0 |
0 |
1 |
0 |
1 |
0 |
0 |
1 |
1 |
1 |
Единица на выходе схемы И будет тогда и только тогда, когда на всех входах будут единицы. Когда хотя бы на одном входе будет ноль, на выходе также будет ноль.
Связь между выходом z этой схемы и входами x и y описывается соотношением: z = xЧy (читается как "x и y").
Операция конъюнкции на функциональных схемах обозначается знаком “&” (читается как "амперсэнд"), являющимся сокращенной записью английского слова and.
С х е м а ИЛИ
Схема ИЛИ реализует дизъюнкцию двух или более логических значений.
Когда хотя бы на одном входе схемы ИЛИ будет единица, на её выходе также будет единица.
Условное обозначение схемы ИЛИ представлено на рис. 5.2. Знак “1” на схеме от устаревшего обозначения дизъюнкции как ">=1" (т.е. значение дизъюнкции равно единице, если сумма значений операндов больше или равна 1). Связь между выходом z этой схемы и входами x и y описывается соотношением: z = x v y (читается как "x или y"). Таблица истинности в табл. 5.2.
Рис. 5.2
Таблица 5.2
x |
y |
x v y |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
С х е м а НЕ
Схема НЕ (инвертор) реализует операцию отрицания. Связь между входом x этой схемы и выходом z можно записать соотношением z =, где читается как "не x" или "инверсия х".
Если на входе схемы 0, то на выходе 1. Когда на входе 1, на выходе 0. Условное обозначение инвертора на рисунке 5.3, а таблица истинности в табл. 5.3.
Рис. 5.3
Таблица 5.3
x |
|
0 |
1 |
1 |
0 |
С х е м а И - НЕ
Схема И-НЕ состоит из элемента И и инвертора и осуществляет отрицание результата схемы И.
Связь между выходом z и входами x и y схемы записывают следующим образом:, где читается как "инверсия x и y".
Условное обозначение схемы И-НЕ представлено на рисунке 5.4. Таблица истинности схемы И-НЕ в табл. 5.4.
Рис. 5.4
Таблица 5.4
x |
y |
|
0 |
0 |
1 |
0 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
0 |
С х е м а ИЛИ - НЕ
Схема ИЛИ-НЕ состоит из элемента ИЛИ и инвертора и осуществляет отрицание результата схемы ИЛИ.
Связь между выходом z и входами x и y схемы записывают следующим образом:, где, читается как "инверсия x или y". Условное обозначение схемы ИЛИ-НЕ представлено на рис. 5.5.
Таблица истинности схемы ИЛИ-НЕ в табл. 5.5.
Рис. 5.5
Таблица 5.5
x |
y |
|
0 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
0 |
1 |
1 |
0 |
Триггер это электронная схема, широко применяемая в регистрах компьютера для надёжного запоминания одного разряда двоичного кода. Триггер имеет два устойчивых состояния, одно из которых соответствует двоичной единице, а другое двоичному нулю. |
Термин триггер происходит от английского слова trigger защёлка, спусковой крючок. Для обозначения этой схемы в английском языке чаще употребляется термин flip-flop, что в переводе означает “хлопанье”. Это звукоподражательное название электронной схемы указывает на её способность почти мгновенно переходить (“перебрасываться”) из одного электрического состояния в другое и наоборот.
Самый распространённый тип триггера так называемый RS-триггер (S и R, соответственно, от английских set установка, и reset сброс). Условное обозначение триггера на рис. 5.6.
Рис. 5.6
Он имеет два симметричных входа S и R и два симметричных выхода Q и, причем выходной сигнал Q является логическим отрицанием сигнала.
На каждый из двух входов S и R могут подаваться входные сигналы в виде кратковременных импульсов ().
Наличие импульса на входе будем считать единицей, а его отсутствие нулем.
На рис. 5.7 показана реализация триггера с помощью вентилей ИЛИ-НЕ и соответствующая таблица истинности.
Рис. 5.7
S |
R |
Q |
|
0 |
0 |
запрещено |
|
0 |
1 |
1 |
0 |
1 |
0 |
0 |
1 |
1 |
1 |
хранение бита |
Проанализируем возможные комбинации значений входов R и S триггера, используя его схему и таблицу истинности схемы ИЛИ-НЕ (табл. 5.5).
Поскольку один триггер может запомнить только один разряд двоичного кода, то для запоминания байта нужно 8 триггеров, для запоминания килобайта, соответственно, 8 • 210 = 8192 триггеров. Современные микросхемы памяти содержат миллионы триггеров.
Сумматор это электронная логическая схема, выполняющая суммирование двоичных чисел. |
Сумматор служит, прежде всего, центральным узлом арифметико-логического устройства компьютера, однако он находит применение также и в других устройствах машины.
Многоразрядный двоичный сумматор, предназначенный для сложения многоразрядных двоичных чисел, представляет собой комбинацию одноразрядных сумматоров, с рассмотрения которых мы и начнём. Условное обозначение одноразрядного сумматора на рис. 5.8.
Рис. 5.8
При сложении чисел A и B в одном i-ом разряде приходится иметь дело с тремя цифрами:
1. цифра ai первого слагаемого;
2. цифра bi второго слагаемого;
3. перенос pi1 из младшего разряда.
В результате сложения получаются две цифры:
1. цифра ci для суммы;
2. перенос pi из данного разряда в старший.
Таким образом, одноразрядный двоичный сумматор есть устройство с тремя входами и двумя выходами, работа которого может быть описана следующей таблицей истинности:
Входы |
Выходы |
|||
Первое слагаемое |
Второе слагаемое |
Перенос |
Сумма |
Перенос |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
1 |
0 |
0 |
1 |
0 |
1 |
0 |
0 |
1 |
1 |
0 |
1 |
1 |
0 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
1 |
1 |
0 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
Если требуется складывать двоичные слова длиной два и более бит, то можно использовать последовательное соединение таких сумматоров, причём для двух соседних сумматоров выход переноса одного сумматора является входом для другого.
Например, схема вычисления суммы C = (с3 c2 c1 c0) двух двоичных трехразрядных чисел A = (a2 a1 a0) и B = (b2 b1 b0) может иметь вид:
В алгебре логики выполняются следующие основные законы, позволяющие производить тождественные преобразования логических выражений:
Закон |
Для ИЛИ |
Для И |
Переместительный |
||
Сочетательный |
||
Распределительный |
||
Правила де Моргана |
||
Идемпотенции |
||
Поглощения |
||
Склеивания |
||
Операция переменной с ее инверсией |
||
Операция с константами |
||
Двойного отрицания |
Согласно определению, таблица истинности логической формулы выражает соответствие между всевозможными наборами значений переменных и значениями формулы.
Для формулы, которая содержит две переменные, таких наборов значений переменных всего четыре: (0,0), (0,1), (1,0), (1,1).
Если формула содержит три переменные, то возможных наборов значений переменных восемь:
(0,0,0), (0,0,1), (0,1,0), (0,1,1),
(1,0,0), (1,0,1), (1,1,0), (1,1,1).
Количество наборов для формулы с четырьмя переменными равно шестнадцати и т.д.
Удобной формой записи при нахождении значений формулы является таблица, содержащая кроме значений переменных и значений формулы также и значения промежуточных формул.
Примеры.
1. Составим таблицу истинности для формулы, которая содержит две переменные x и y. В первых двух столбцах таблицы запишем четыре возможных пары значений этих переменных, в последующих столбцах значения промежуточных формул и в последнем столбце значение формулы. В результате получим таблицу:
Переменные |
Промежуточные логические формулы |
Формула |
|||||
0 |
0 |
1 |
0 |
0 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
0 |
0 |
0 |
1 |
0 |
0 |
1 |
1 |
1 |
0 |
0 |
1 |
0 |
0 |
1 |
Из таблицы видно, что при всех наборах значений переменных x и y формула принимает значение 1, то есть является тождественно истинной.
2. Таблица истинности для формулы:
Переменные |
Промежуточные логические формулы |
Формула |
||||
0 |
0 |
0 |
1 |
1 |
0 |
0 |
0 |
1 |
1 |
0 |
0 |
0 |
0 |
1 |
0 |
1 |
0 |
1 |
1 |
0 |
1 |
1 |
1 |
0 |
0 |
0 |
0 |
Из таблицы видно, что при всех наборах значений переменных x и y формула принимает значение 0, то есть является тождественно ложной.
3. Таблица истинности для формулы:
Переменные |
Промежуточные логические формулы |
Формула |
||||||
0 |
0 |
0 |
1 |
1 |
0 |
1 |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
0 |
1 |
0 |
0 |
0 |
1 |
1 |
0 |
1 |
0 |
1 |
1 |
0 |
0 |
1 |
1 |
1 |
1 |
1 |
0 |
0 |
1 |
1 |
0 |
0 |
0 |
0 |
1 |
0 |
1 |
1 |
1 |
0 |
0 |
0 |
0 |
1 |
1 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
0 |
1 |
0 |
0 |
0 |
0 |
Из таблицы видно, что формула в некоторых случаях принимает значение 1, а в некоторых 0, то есть является выполнимой.
Равносильные преобразования логических формул имеют то же назначение, что и преобразования формул в обычной алгебре. Они служат для упрощения формул или приведения их к определённому виду путем использования основных законов алгебры логики.
Под упрощением формулы, не содержащей операций импликации и эквиваленции, понимают равносильное преобразование, приводящее к формуле, которая либо содержит по сравнению с исходной меньшее число операций конъюнкции и дизъюнкции и не содержит отрицаний неэлементарных формул, либо содержит меньшее число вхождений переменных. |
Некоторые преобразования логических формул похожи на преобразования формул в обычной алгебре (вынесение общего множителя за скобки, использование переместительного и сочетательного законов и т.п.), тогда как другие преобразования основаны на свойствах, которыми не обладают операции обычной алгебры (использование распределительного закона для конъюнкции, законов поглощения, склеивания, де Моргана и др.).
Покажем на примерах некоторые приемы и способы, применяемые при упрощении логических формул:
1)
(законы алгебры логики применяются в следующей последовательности: правило де Моргана, сочетательный закон, правило операций переменной с её инверсией и правило операций с константами);
2)
(применяется правило де Моргана, выносится за скобки общий множитель, используется правило операций переменной с её инверсией);
3)
(повторяется второй сомножитель, что разрешено законом идемпотенции; затем комбинируются два первых и два последних сомножителя и используется закон склеивания);
4)
(вводится вспомогательный логический сомножитель (); затем комбинируются два крайних и два средних логических слагаемых и используется закон поглощения);
5)
(сначала добиваемся, чтобы знак отрицания стоял только перед отдельными переменными, а не перед их комбинациями, для этого дважды применяем правило де Моргана; затем используем закон двойного отрицания);
6)
(выносятся за скобки общие множители; применяется правило операций с константами);
7)
(к отрицаниям неэлементарных формул применяется правило де Моргана; используются законы двойного отрицания и склеивания);
8)
(общий множитель x выносится за скобки, комбинируются слагаемые в скобках первое с третьим и второе с четвертым, к дизъюнкции применяется правило операции переменной с её инверсией);
9)
(используются распределительный закон для дизъюнкции, правило операции переменной с ее инверсией, правило операций с константами, переместительный закон и распределительный закон для конъюнкции);
10)
(используются правило де Моргана, закон двойного отрицания и закон поглощения).
Из этих примеров видно, что при упрощении логических формул не всегда очевидно, какой из законов алгебры логики следует применить на том или ином шаге. Навыки приходят с опытом.
В компьютерах и других автоматических устройствах широко применяются электрические схемы, содержащие сотни и тысячи переключательных элементов: реле, выключателей и т.п. Разработка таких схем весьма трудоёмкое дело. Оказалось, что здесь с успехом может быть использован аппарат алгебры логики.
Переключательная схема это схематическое изображение некоторого устройства, состоящего из переключателей и соединяющих их проводников, а также из входов и выходов, на которые подаётся и с которых снимается электрический сигнал. |
Каждый переключатель имеет только два состояния: замкнутое и разомкнутое. Переключателю Х поставим в соответствие логическую переменную х, которая принимает значение 1 в том и только в том случае, когда переключатель Х замкнут и схема проводит ток; если же переключатель разомкнут, то х равен нулю.
Будем считать, что два переключателя Х и связаны таким образом, что когда Х замкнут, то разомкнут, и наоборот. Следовательно, если переключателю Х поставлена в соответствие логическая переменная х, то переключателю должна соответствовать переменная.
Всей переключательной схеме также можно поставить в соответствие логическую переменную, равную единице, если схема проводит ток, и равную нулю если не проводит. Эта переменная является функцией от переменных, соответствующих всем переключателям схемы, и называется функцией проводимости.
Найдем функции проводимости F некоторых переключательных схем:
a)
Схема не содержит переключателей и проводит ток всегда, следовательно F=1;
б)
Схема содержит один постоянно разомкнутый контакт, следовательно F=0;
в)
Схема проводит ток, когда переключатель х замкнут, и не проводит, когда х разомкнут, следовательно, F(x) = x;
г)
Схема проводит ток, когда переключатель х разомкнут, и не проводит, когда х замкнут, следовательно, F(x) = ;
д)
Схема проводит ток, когда оба переключателя замкнуты, следовательно, F(x) = xЧy;
е)
Схема проводит ток, когда хотя бы один из переключателей замкнут, следовательно, F(x)=x v y;
ж)
Схема состоит из двух параллельных ветвей и описывается функцией.
Две схемы называются равносильными, если через одну из них проходит ток тогда и только тогда, когда он проходит через другую (при одном и том же входном сигнале). Из двух равносильных схем более простой считается та схема, функция проводимости которой содержит меньшее число логических операций или переключателей. |
Задача нахождения среди равносильных схем наиболее простых является очень важной. Большой вклад в ее решение внесли российские учёные Ю.И. Журавлев, С.В. Яблонский и др.
При рассмотрении переключательных схем возникают две основные задачи: синтез и анализ схемы.
СИНТЕЗ СХЕМЫ по заданным условиям ее работы сводится к следующим трём этапам:
АНАЛИЗ СХЕМЫ сводится к
Примеры.
1. Построим схему, содержащую 4 переключателя x, y, z и t, такую, чтобы она проводила ток тогда и только тогда, когда замкнут контакт переключателя t и какой-нибудь из остальных трёх контактов.
Решение. В этом случае можно обойтись без построения таблицы истинности. Очевидно, что функция проводимости имеет вид F(x, y, z, t) = t Ч (x v y v z), а схема выглядит так:
2. Построим схему с пятью переключателями, которая проводит ток в том и только в том случае, когда замкнуты ровно четыре из этих переключателей.
Схема имеет вид:
3. Найдем функцию проводимости схемы:
Решение. Имеется четыре возможных пути прохождения тока при замкнутых переключателях a, b, c, d, e : через переключатели a, b; через переключатели a, e, d; через переключатели c, d и через переключатели c, e, b. Функция проводимости F(a, b, c, d, e) = aЧb v aЧ eЧd v cЧd v cЧeЧb.
4. Упростим переключательные схемы:
а)
Решение:
Упрощенная схема:
б)
.
Здесь первое логическое слагаемое является отрицанием второго логического слагаемого, а дизъюнкция переменной с ее инверсией равна 1.
Упрощенная схема :
в)
Упрощенная схема:
г)
Упрощенная схема:
д)
(по закону склеивания)
Упрощенная схема:
е)
Решение:
Упрощенная схема:
Разнообразие логических задач очень велико. Способов их решения тоже немало. Но наибольшее распространение получили следующие три способа решения логических задач:
Познакомимся с ними поочередно.
Обычно используется следующая схема решения:
Пример 1. Трое друзей, болельщиков автогонок "Формула-1", спорили о результатах предстоящего этапа гонок.
Вот увидишь, Шумахер не придет первым, сказал Джон. Первым будет Хилл.
Да нет же, победителем будет, как всегда, Шумахер, воскликнул Ник. А об Алези и говорить нечего, ему не быть первым.
Питер, к которому обратился Ник, возмутился:
Хиллу не видать первого места, а вот Алези пилотирует самую мощную машину.
По завершении этапа гонок оказалось, что каждое из двух предположений двоих друзей подтвердилось, а оба предположения третьего из друзей оказались неверны. Кто выиграл этап гонки?
Решение. Введем обозначения для логических высказываний:
Ш победит Шумахер; Х победит Хилл; А победит Алези.
Реплика Ника "Алези пилотирует самую мощную машину" не содержит никакого утверждения о месте, которое займёт этот гонщик, поэтому в дальнейших рассуждениях не учитывается.
Зафиксируем высказывания каждого из друзей:
Учитывая то, что предположения двух друзей подтвердились, а предположения третьего неверны, запишем и упростим истинное высказывание
Высказывание истинно только при Ш=1, А=0, Х=0.
Ответ. Победителем этапа гонок стал Шумахер.
Пример 2. Некий любитель приключений отправился в кругосветное путешествие на яхте, оснащённой бортовым компьютером. Его предупредили, что чаще всего выходят из строя три узла компьютера a, b, c, и дали необходимые детали для замены. Выяснить, какой именно узел надо заменить, он может по сигнальным лампочкам на контрольной панели. Лампочек тоже ровно три: x, y и z.
Инструкция по выявлению неисправных узлов такова:
В пути компьютер сломался. На контрольной панели загорелась лампочка x. Тщательно изучив инструкцию, путешественник починил компьютер. Но с этого момента и до конца плавания его не оставляла тревога. Он понял, что инструкция несовершенна, и есть случаи, когда она ему не поможет.
Какие узлы заменил путешественник? Какие изъяны он обнаружил в инструкции?
Решение. Введем обозначения для логических высказываний:
a неисправен узел а; x горит лампочка х;
b неисправен узел b; y горит лампочка y;
с неисправен узел с; z горит лампочка z.
Правила 15 выражаются следующими формулами:
Формулы 15 истинны по условию, следовательно, их конъюнкция тоже истинна:
Выражая импликацию через дизъюнкцию и отрицание (напомним, что), получаем:
Подставляя в это тождество конкретные значения истинности x=1, y=0, z=0, получаем:
Отсюда следует, что a=0, b=1, c=1.
Ответ на первый вопрос задачи: нужно заменить блоки b и c; блок а не требует замены. Ответ на второй вопрос задачи получите самостоятельно.
При использовании этого способа условия, которые содержит задача, и результаты рассуждений фиксируются с помощью специально составленных таблиц.
Пример 3. В симфонический оркестр приняли на работу трёх музыкантов: Брауна, Смита и Вессона, умеющих играть на скрипке, флейте, альте, кларнете, гобое и трубе.
Известно, что:
На каких инструментах играет каждый из музыкантов, если каждый владеет двумя инструментами?
Решение. Составим таблицу и отразим в ней условия задачи, заполнив соответствующие клетки цифрами 0 и 1 в зависимости от того, ложно или истинно соответствующее высказывание.
Так как музыкантов трoе, инструментов шесть и каждый владеет только двумя инструментами, получается, что каждый музыкант играет на инструментах, которыми остальные не владеют.
Из условия 4 следует, что Смит не играет ни на альте, ни на трубе, а из условий 3 и 5, что Браун не умеет играть на скрипке, флейте, трубе и гобое. Следовательно, инструменты Брауна альт и кларнет. Занесем это в таблицу, а оставшиеся клетки столбцов "альт" и "кларнет" заполним нулями:
|
скрипка |
флейта |
альт |
кларнет |
гобой |
труба |
Браун |
0 |
0 |
1 |
1 |
0 |
0 |
Смит |
|
|
0 |
0 |
|
0 |
Вессон |
|
|
0 |
0 |
|
|
Из таблицы видно, что на трубе может играть только Вессон.
Из условий 1 и 2 следует, что Смит не скрипач. Так как на скрипке не играет ни Браун, ни Смит, то скрипачом является Вессон. Оба инструмента, на которых играет Вессон, теперь определены, поэтому остальные клетки строки "Вессон" можно заполнить нулями:
|
скрипка |
флейта |
альт |
кларнет |
гобой |
труба |
Браун |
0 |
0 |
1 |
1 |
0 |
0 |
Смит |
0 |
|
0 |
0 |
|
0 |
Вессон |
1 |
0 |
0 |
0 |
0 |
1 |
Из таблицы видно, что играть на флейте и на гобое может только Смит.
|
скрипка |
флейта |
альт |
кларнет |
гобой |
труба |
Браун |
0 |
0 |
1 |
1 |
0 |
0 |
Смит |
0 |
1 |
0 |
0 |
1 |
0 |
Вессон |
1 |
0 |
0 |
0 |
0 |
1 |
Ответ: Браун играет на альте и кларнете, Смит на флейте и гобое, Вессон на скрипке и трубе.
Пример 4. Три одноклассника Влад, Тимур и Юра, встретились спустя 10 лет после окончания школы. Выяснилось, что один из них стал врачом, другой физиком, а третий юристом. Один полюбил туризм, другой бег, страсть третьего регби.
Юра сказал, что на туризм ему не хватает времени, хотя его сестра единственный врач в семье, заядлый турист. Врач сказал, что он разделяет увлечение коллеги.
Забавно, но у двоих из друзей в названиях их профессий и увлечений не встречается ни одна буква их имен.
Определите, кто чем любит заниматься в свободное время и у кого какая профессия.
Решение. Здесь исходные данные разбиваются на тройки (имя профессия увлечение).
Из слов Юры ясно, что он не увлекается туризмом и он не врач. Из слов врача следует, что он турист.
Имя |
Юра |
|
|
Профессия |
|
врач |
|
Увлечение |
|
туризм |
|
Буква "а", присутствующая в слове "врач", указывает на то, что Влад тоже не врач, следовательно врач Тимур. В его имени есть буквы "т" и "р", встречающиеся в слове "туризм", следовательно второй из друзей, в названиях профессии и увлечения которого не встречается ни одна буква его имени Юра. Юра не юрист и не регбист, так как в его имени содержатся буквы "ю" и "р". Следовательно, окончательно имеем:
Имя |
Юра |
Тимур |
Влад |
Профессия |
физик |
врач |
юрист |
Увлечение |
бег |
туризм |
регби |
Ответ. Влад юрист и регбист, Тимур врач и турист, Юра физик и бегун.
Пример 5. Три дочери писательницы Дорис Кей Джуди, Айрис и Линда, тоже очень талантливы. Они приобрели известность в разных видах искусств пении, балете и кино. Все они живут в разных городах, поэтому Дорис часто звонит им в Париж, Рим и Чикаго.
Известно, что:
Где живет Айрис, и какова ее профессия?
Решение. Составим таблицу и отразим в ней условия 1 и 4, заполнив клетки цифрами 0 и 1 в зависимости от того, ложно или истинно соответствующее высказывание:
Париж |
Рим |
Чикаго |
|
Пение |
Балет |
Кино |
0 |
|
|
Джуди |
|
|
|
|
|
|
Айрис |
|
|
|
|
0 |
|
Линда |
|
0 |
|
Далее рассуждаем следующим образом. Так как Линда живет не в Риме, то, согласно условию 3, она не певица. В клетку, соответствующую строке "Линда" и столбцу "Пение", ставим 0.
Из таблицы сразу видно, что Линда киноактриса, а Джуди и Айрис не снимаются в кино.
Париж |
Рим |
Чикаго |
|
Пение |
Балет |
Кино |
0 |
|
|
Джуди |
|
|
0 |
|
|
|
Айрис |
|
|
0 |
|
0 |
|
Линда |
0 |
0 |
1 |
Согласно условию 2, парижанка не снимается в кино, следовательно, Линда живет не в Париже. Но она живет и не в Риме. Следовательно, Линда живет в Чикаго. Так как Линда и Джуди живут не в Париже, там живет Айрис. Джуди живет в Риме и, согласно условию 3, является певицей. А так как Линда киноактриса, то Айрис балерина.
В результате постепенного заполнения получаем следующую таблицу:
Париж |
Рим |
Чикаго |
|
Пение |
Балет |
Кино |
0 |
0 |
1 |
Джуди |
1 |
0 |
0 |
1 |
0 |
0 |
Айрис |
0 |
1 |
0 |
0 |
0 |
1 |
Линда |
0 |
0 |
1 |
Ответ. Айрис балерина. Она живет в Париже.
Этим способом обычно решают несложные логические задачи.
Пример 6. Вадим, Сергей и Михаил изучают различные иностранные языки: китайский, японский и арабский. На вопрос, какой язык изучает каждый из них, один ответил: "Вадим изучает китайский, Сергей не изучает китайский, а Михаил не изучает арабский". Впоследствии выяснилось, что в этом ответе только одно утверждение верно, а два других ложны. Какой язык изучает каждый из молодых людей?
Решение. Имеется три утверждения:
Если верно первое утверждение, то верно и второе, так как юноши изучают разные языки. Это противоречит условию задачи, поэтому первое утверждение ложно.
Если верно второе утверждение, то первое и третье должны быть ложны. При этом получается, что никто не изучает китайский. Это противоречит условию, поэтому второе утверждение тоже ложно.
Остается считать верным третье утверждение, а первое и второе ложными. Следовательно, Вадим не изучает китайский, китайский изучает Сергей.
Ответ: Сергей изучает китайский язык, Михаил японский, Вадим арабский.
Пример 7. В поездке пятеро друзей Антон, Борис, Вадим, Дима и Гриша, знакомились с попутчицей. Они предложили ей отгадать их фамилии, причём каждый из них высказал одно истинное и одно ложное утверждение:
Дима сказал: "Моя фамилия Молотов, а фамилия Бориса Хрущев". Антон сказал: "Молотов это моя фамилия, а фамилия Вадима Брежнев". Борис сказал: "Фамилия Вадима Тихонов, а моя фамилия Молотов". Вадим сказал: "Моя фамилия Брежнев, а фамилия Гриши Чехов". Гриша сказал: "Да, моя фамилия Чехов, а фамилия Антона Тихонов".
Какую фамилию носит каждый из друзей?
Решение. Обозначим высказывательную форму "юноша по имени А носит фамилию Б" как АБ, где буквы А и Б соответствуют начальным буквам имени и фамилии.
Зафиксируем высказывания каждого из друзей:
Допустим сначала, что истинно ДМ. Но, если истинно ДМ, то у Антона и у Бориса должны быть другие фамилии, значит АМ и БМ ложно. Но если АМ и БМ ложны, то должны быть истинны ВБ и ВТ, но ВБ и ВТ одновременно истинными быть не могут.
Значит остается другой случай: истинно БХ. Этот случай приводит к цепочке умозаключений: БХ истинно ® БМ ложно ® ВТ истинно ® АТ ложно ® ГЧ истинно ® ВБ ложно ® АМ истинно.
Ответ: Борис Хрущев, Вадим Тихонов, Гриша Чехов, Антон Молотов, Дима Брежнев.
Пример 8. Министры иностранных дел России, США и Китая обсудили за закрытыми дверями проекты соглашения о полном разоружении, представленные каждой из стран. Отвечая затем на вопрос журналистов: "Чей именно проект был принят?", министры дали такие ответы:
Россия "Проект не наш, проект не США";
США "Проект не России, проект Китая";
Китай "Проект не наш, проект России".
Один из них (самый откровенный) оба раза говорил правду; второй (самый скрытный) оба раза говорил неправду, третий (осторожный) один раз сказал правду, а другой раз неправду.
Определите, представителями каких стран являются откровенный, скрытный и осторожный министры.
Решение. Для удобства записи пронумеруем высказывания дипломатов:
Россия "Проект не наш" (1), "Проект не США" (2);
США "Проект не России" (3), "Проект Китая" (4);
Китай "Проект не наш" (5), "Проект России" (6).
Узнаем, кто из министров самый откровенный.
Если это российский министр, то из справедливости (1) и (2) следует, что победил китайский проект. Но тогда оба утверждения министра США тоже справедливы, чего не может быть по условию.
Если самый откровенный министр США, то тогда вновь получаем, что победил китайский проект, значит оба утверждения российского министра тоже верны, чего не может быть по условию.
Получается, что наиболее откровенным был китайский министр. Действительно, из того, что (5) и (6) справедливы, cледует, что победил российский проект. А тогда получается, что из двух утверждений российского министра первое ложно, а второе верно. Оба же утверждения министра США неверны.
Ответ: Откровеннее был китайский министр, осторожнее российский, скрытнее министр США.
5.1. Установите, какие из следующих предложений являются логическими высказываниями, а какие нет (объясните почему):
[ Ответ ]
5.2. Укажите, какие из высказываний предыдущего упражнения истинны, какие ложны, а какие относятся к числу тех, истинность которых трудно или невозможно установить.
[ Ответ ]
5.3. Приведите примеры истинных и ложных высказываний:
[ Ответ ]
5.4. Сформулируйте отрицания следующих высказываний или высказывательных форм:
[ Ответ ]
5.5. Определите, какие из высказываний (высказывательных форм) в следующих парах являются отрицаниями друг друга, а какие нет:
[ Ответ ]
5.6. Определите значения истинности высказываний:
[ Ответ ]
5.7. Подставьте в приведённые ниже высказывательные формы вместо логических переменных a, b, c, d такие высказывания, чтобы полученные таким образом составные высказывания имели смысл в повседневной жизни:
5.8. Формализуйте следующий вывод: "Если a и b истинны, то c истинно. Но c ложно: значит, a или b ложны".
[ Ответ ]
5.9. Формализуйте предостережение, которое одна жительница древних Афин сделала своему сыну, собиравшемуся заняться политической деятельностью: “Если ты будешь говорить правду, то тебя возненавидят люди. Если ты будешь лгать, то тебя возненавидят боги. Но ты должен говорить правду или лгать. Значит, тебя возненавидят люди или возненавидят боги”.
Формализуйте также ответ сына: “Если я буду говорить правду, то боги будут любить меня. Если я буду лгать, то люди будут любить меня. Но я должен говорить правду или лгать. Значит, меня будут любить боги или меня будут любить люди”.
[ Ответ ]
5.10. Пусть a = “это утро ясное”, а b = “это утро теплое”. Выразите следующие формулы на обычном языке:
[ Ответ ]
5.11. Из двух данных высказываний a и b постройте составное высказывание, которое было бы:
[ Ответ ]
5.12. Из трех данных высказываний a, b, c постройте составное высказывание, которое истинно, когда истинно какое-либо одно из данных высказываний, и только в этом случае.
Ответ:.
5.13. Определите с помощью таблиц истинности, какие из следующих формул являются тождественно истинными или тождественно ложными:
а) |
д) |
б) |
е) |
в) |
ж) |
г) |
|
[ Ответ ]
5.14. Упростите следующие формулы, используя законы склеивания:
[ Ответ ]
5.15. Упростите следующие формулы, используя законы поглощения:
[ Ответ ]
5.16. Постройте таблицы истинности для логических формул и упростите формулы, используя законы алгебры логики:
[ Ответ ]
5.17. Приведите примеры переключательных схем, содержащих хотя бы два переключателя, функция проводимости которых
5.18. Найдите функции проводимости следующих переключательных схем:
а) |
б) |
||
в) |
г) |
[ Ответ ]
5.19. Проверьте равносильность следующих переключательных схем:
[ Ответ ]
5.20. Постройте переключательные схемы с заданными функциями проводимости:
5.21. Упростите функции проводимости и постройте переключательные схемы, соответствующие упрощенным функциям:
[ Ответ ]
5.22. Упростите следующие переключательные схемы:
[ Ответ ]
ЛОГИЧЕСКИЕ ЗАДАЧИ
5.23. Три девочки Роза, Маргарита и Анюта представили на конкурс цветоводов корзины выращенных ими роз, маргариток и анютиных глазок. Девочка, вырастившая маргаритки, обратила внимание Розы на то, что ни у одной из девочек имя не совпадает с названием любимых цветов.
Какие цветы вырастила каждая из девочек?
[ Ответ ]
5.24. Виновник ночного дорожно-транспортного происшествия скрылся с места аварии.
Первый из опрошенных свидетелей сказал работникам ГАИ, что это были “Жигули”, первая цифра номера машины единица.
Второй свидетель сказал, что машина была марки “Москвич”, а номер начинался с семёрки.
Третий свидетель заявил, что машина была иностранная, номер начинался не с единицы.
При дальнейшем расследовании выяснилось, что каждый из свидетелей правильно указал либо только марку машины, либо только первую цифру номера.
Какой марки была машина и с какой цифры начинался номер?
[ Ответ ]
5.25. Пятеро одноклассников: Ирена, Тимур, Камилла, Эльдар и Залим стали победителями олимпиад школьников по физике, математике, информатике, литературе и географии.
Известно, что:
Победителем какой олимпиады стал каждый из этих ребят?
[ Ответ ]
5.26. Ирена любит мороженое с фруктами. В кафе был выбор из таких вариантов:
В четырёх вариантах Ирене не нравились или тип мороженого, или наполнитель, а в одном варианте ей не нравились ни мороженое, ни наполнитель. Она попросила приготовить из имеющихся продуктов порцию по своему вкусу.
Какое же мороженое и с какими фруктами любит Ирена?
[ Ответ ]
5.27. На очередном этапе автогонок “Формула 1” первые четыре места заняли Шумахер, Алези, Хилл и Кулхардт. Опоздавший к месту награждения телерепортёр успел заснять пилотов, занявших второе и третье места, которые поливали друг друга шампанским. В это время Шумахер с четвёртым гонщиком пожимали друг другу руки. Далее в кадр попал мокрый Хилл, поздравляющий пилота, занявшего второе место. Напоследок оператор снял сцену, в которой Шумахер и Кулхардт пытались втащить на пьедестал почёта пилота, занявшего четвёртое место.
Просматривая отснятый материал, режиссёр спортивного выпуска быстро разобрался, кто из пилотов какое место занял. Он знал, что, в соответствии с церемонией награждения победителей гонок, пилоты, занявшие первые три места, поливают друг друга шампанским из огромных бутылок знаменитой фирмы спонсора соревнований.
Какое же место занял каждый пилот?
[ Ответ ]
5.28. В некотором царстве-государстве повадился Змей Горыныч разбойничать. Послал царь четырёх богатырей погубить Змея, а награду за то обещал великую. Вернулись богатыри с победой и спрашивает их царь: “Так кто же из вас главный победитель, кому достанется царёва дочь и полцарства?”
Засмущались добры молодцы и ответы дали туманные:
Сказал Илья Муромец: “Это все Алеша Попович, царь-батюшка”.
Алеша Попович возразил: “То был Микула Селянинович”.
Микула Селянинович: “Не прав Алеша, не я это”.
Добрыня Никитич: “И не я, батюшка”.
Подвернулась тут баба Яга и говорит царю: “А прав то лишь один из богатырей, видела я всю битву своими глазами”.
Кто же из богатырей победил Змея Горыныча?
[ Ответ ]
5.29. При составлении расписания на пятницу были высказаны пожелания, чтобы информатика была первым или вторым уроком, физика первым или третьим, история вторым или третьим.
Можно ли удовлетворить одновременно все высказанные пожелания?
[ Ответ ]
5.30. Обсуждая конструкцию нового трёхмоторного самолёта, трое конструкторов поочередно высказали следующие предположения:
1) при отказе второго двигателя надо приземляться, а при отказе третьего можно продолжать полёт;
2) при отказе первого двигателя лететь можно, или при отказе третьего двигателя лететь нельзя;
3) при отказе третьего двигателя лететь можно, но при отказе хотя бы одного из остальных надо садиться.
Лётные испытания подтвердили правоту каждого из конструкторов. Определите, при отказе какого из двигателей нельзя продолжать полёт.
[ Ответ ]
5.31. В соревнованиях по плаванию участвовали Андрей, Виктор, Саша и Дима. Их друзья высказали предположения о возможных победителях:
1) первым будет Саша, Виктор будет вторым;
2) вторым будет Саша, Дима будет третьим;
3) Андрей будет вторым, Дима будет четвёртым.
По окончании соревнований оказалось, что в каждом из предположений только одно из высказываний истинно, другое ложно.
Какое место на соревнованиях занял каждый из юношей, если все они заняли разные места.
[ Ответ ]
5.32. Для длительной международной экспедиции на околоземной космической станции надо из восьми претендентов отобрать шесть специалистов: по аэронавтике, космонавигации, биомеханике, энергетике, медицине и астрофизике. Условия полёта не позволяют совмещать работы по разным специальностям, хотя некоторые претенденты владеют двумя специальностями. Обязанности аэронавта могут выполнять Геррети и Нам; космонавигатора Кларк и Фриш; биомеханика Фриш и Нам; энергетика Депардье и Леонов; врача Депардье и Хорхес; астрофизика Волков и Леонов.
По особенностям психологической совместимости врачи рекомендуют совместные полеты Фриша и Кларка, а также Леонова с Хорхесом и Депардье. Напротив, нежелательно, чтобы Депардье оказался в одной экспедиции с Намом, а Волков с Кларком.
Кого следует включить в состав экспедиции?
[ Ответ ]
***********************************
Под программным обеспечением (Software) понимается совокупность программ, выполняемых вычислительной системой. |
К программному обеспечению (ПО) относится также вся область деятельности по проектированию и разработке ПО:
Программное обеспечение неотъемлемая часть компьютерной системы. Оно является логическим родолжением технических средств. Сфера применения конкректного компьютера определяется созданным для него ПО.
Сам по себе компьютер не обладает знаниями ни в одной области применения. Все эти знания сосредоточены в выполняемых на компьютерах программах. |
Программное обеспечение современных компьютеров включает миллионы программ от игровых до научных.
В первом приближении все программы, работающие на компьютере, можно условно разделить на три категории (рис. 6.1):
Рис. 6.1. Категории программного обеспечения
При построении классификации ПО нужно учитывать тот факт, что стремительное развитие вычислительной техники и расширение сферы приложения компьютеров резко ускорили процесс эволюции программного обеспечения.
Если раньше можно было по пальцам перечислить основные категории ПО операционные системы, трансляторы, пакеты прикладных программ, то сейчас ситуация коренным образом изменилась.
Развитие ПО пошло как вглубь (появились новые подходы к построению операционных систем, языков программирования и т.д.), так и вширь (прикладные программы перестали быть прикладными и приобрели самостоятельную ценность).
Соотношение между требующимися программными продуктами и имеющимися на рынке меняется очень быстро. Даже классические программные продукты, такие, как операционные системы, непрерывно развиваются и наделяются интеллектуальными функциями, многие из которых ранее относились только к интеллектуальным возможностям человека.
Кроме того, появились нетрадиционные программы, классифицировать которые по устоявшимся критериям очень трудно, а то и просто невозможно, как, например, программа электронный собеседник.
На сегодняшний день можно сказать, что более или менее определённо сложились следующие группы программного обеспечения:
Структура программного обеспечения показана на рис. 6.2. Разумеется, эту классификацию нельзя считать исчерпывающей, но она более или менее наглядно отражает направления совершенствования и развития программного обеспечения.
Прикладная программа это любая конкретная программа, способствующая решению какой-либо задачи в пределах данной проблемной области. |
Например, там, где на компьютер возложена задача контроля за финансовой деятельностью какой-либо фирмы, прикладной будет программа подготовки платежных ведомостей.
Прикладные программы могут носить и общий характер, например, обеспечивать составление и печатание документов и т.п.
В противоположность этому, операционная система или инструментальное ПО не вносят прямого вклада в удовлетворение конечных потребностей пользователя.
Прикладные программы могут использоваться либо автономно, то есть решать поставленную задачу без помощи других программ, либо в составе программных комплексов или пакетов.
Системные программы выполняются вместе с прикладными и служат для управления ресурсами компьютера центральным процессором, памятью, вводом-выводом.
Это программы общего пользования, которые предназначены для всех пользователей компьютера. Системное программное обеспечение разрабатывается так, чтобы компьютер мог эффективно выполнять прикладные программы.
Рис. 6.2. Структура программного обеспечения компьютера
Cреди десятков тысяч системных программ особое место занимают операционные системы, которые обеспечивают управление ресурсами компьютера с целью их эффективного использования.
Важными классами системных программ являются также программы вспомогательного назначения утилиты (лат. utilitas польза). Они либо расширяют и дополняют соответствующие возможности операционной системы, либо решают самостоятельные важные задачи. Кратко опишем некоторые разновидности утилит:
Компьютерный вирус это специально написанная небольшая по размерам программа, которая может "приписывать" себя к другим программам для выполнения каких-либо вредных действий портит файлы, "засоряет" оперативную память и т.д. |
Часть утилит входит в состав операционной системы, а другая часть функционирует независимо от нее, т.е. автономно.
Операционная система это комплекс взаимосвязанных системных программ, назначение которого организовать взаимодействие пользователя с компьютером и выполнение всех других программ. |
Операционная система выполняет роль связующего звена между аппаратурой компьютера, с одной стороны, и выполняемыми программами, а также пользователем, с другой стороны.
Операционная система обычно хранится во внешней памяти компьютера на диске. При включении компьютера она считывается с дисковой памяти и размещается в ОЗУ.
Этот процесс называется загрузкой операционной системы.
В функции операционной системы входит:
Операционную систему можно назвать программным продолжением устройства управления компьютера. Операционная система скрывает от пользователя сложные ненужные подробности взаимодействия с аппаратурой, образуя прослойку между ними. В результате этого люди освобождаются от очень трудоёмкой работы по организации взаимодействия с аппаратурой компьютера. |
В зависимости от количества одновременно обрабатываемых задач и числа пользователей, которых могут обслуживать ОС, различают четыре основных класса операционных систем:
В различных моделях компьютеров используют операционные системы с разной архитектурой и возможностями. Для их работы требуются разные ресурсы. Они предоставляют разную степень сервиса для программирования и работы с готовыми программами.
Операционная система для персонального компьютера, ориентированного на профессиональное применение, должна содержать следующие основные компоненты:
Каждая операционная система имеет свой командный язык, который позволяет пользователю выполнять те или иные действия:
Анализ и исполнение команд пользователя, включая загрузку готовых программ из файлов в оперативную память и их запуск, осуществляет командный процессор операционной системы.
Для управления внешними устройствами компьютера используются специальные системные программы драйверы. Драйверы стандартных устройств образуют в совокупности базовую систему ввода-вывода (BIOS), которая обычно заносится в постоянное ЗУ компьютера.
Файл (англ.file,папка) это место постоянного хранения информации: программ, данных для их работы, текстов, закодированных изображений, звуков и др. Файловая система это средство для организации хранения файлов на каком-либо носителе. |
Файлы физически реализуются как участки памяти на внешних носителях магнитных дисках или CD-ROM.
Каждый файл занимает некоторое количество блоков дисковой памяти. Обычная длина блока 512 байт.
Обслуживает файлы специальный модуль операционной системы, называемый драйвером файловой системы. Каждый файл имеет имя, зарегистрированное в каталоге оглавлении файлов.
Каталог (иногда называется директорией или папкой) доступен пользователю через командный язык операционной системы.
Его можно просматривать, переименовывать зарегистрированные в нем файлы, переносить их содержимое на новое место и удалять.
Каталог может иметь собственное имя и храниться в другом каталоге наряду с обычными файлами: так образуются иерархические файловые структуры. Пример такой структуры на рис. 6.3.
Рис. 6.3. Дерево каталогов на диске
Что происходит, когда пользователь подает операционной системе команду "открыть файл ...", в которой указано имя файла и имя каталога, в котором размещён этот файл? Для выполнения этой команды драйвер файловой системы обращется к своему справочнику, выясняет, какие блоки диска соответствуют указанному файлу, а затем передает запрос на считывание этих блоков драйверу диска. При выполнении команды "сохранить файл" драйвер файловой системы ищет на диске незанятые блоки, отмечает их, как распределённые для вновь созданного файла, и передаёт драйверу диска запрос на запись в эти блоки данных пользователя. |
Драйвер файловой системы обеспечивает доступ к информации, записанной на магнитный диск, по имени файла и распределяет пространство на магнитном диске между файлами. |
Для выполнения этих функций драйвер файловой системы хранит на диске не только информацию пользователя, но и свою собственную служебную информацию. В служебных областях диска хранится список всех файлов и каталогов, а также различные дополнительные справочные таблицы, служащие для повышения скорости работы драйвера файловой системы. |
К файловой системе имеет доступ также и любая прикладная программа, для чего во всех языках программирования имеются специальные процедуры.
Понятие файла может быть обращено на любой источник или потребитель информации в машине, например, в качестве файла для программы могут выступать принтер, дисплей, клавиатура и др.
Структура файловой системы и структура хранения данных на внешних магнитных носителях определяет удобство работы пользователя, скорость доступа к файлам и т.д.
Операционная система MS DOS (Microsoft Disk Operating System) самая распространенная ОС на 16-разрядных персональных компьютерах. Она состоит из следующих основных модулей (рис. 6.4):
Каждый из указанных модулей выполняет определенную часть функций, возложенных на ОС. Места постоянного размещения этих модулей различны. Так, базовая система ввода/вывода находится в постоянном запоминающем устройстве (ПЗУ), а не на дисках, как все остальные модули.
Рис. 6.4. Состав операционной системы MS-DOS
Базовая система ввода/вывода (BIOS) выполняет наиболее простые и универсальные услуги операционной системы, связанные с осуществлением ввода-вывода. В функции BIOS входит также автоматическое тестирование основных аппаратных компонентов (оперативной памяти и др.) при включении машины и вызов блока начальной загрузки DOS. Блок начальной загрузки (или просто загрузчик) это очень короткая программа, единственная функция которой заключается в считывании с диска в оперативную память двух других частей DOS модуля расширения базовой системы ввода/вывода и модуля обработки прерываний. Модуль расширения базовой системы ввода/вывода дает возможность использования дополнительных драйверов, обслуживающих новые внешние устройства, а также драйверов для нестандартного обслуживания внешних устройств. Модуль обработки прерываний реализует основные высокоуровневые услуги DOS, поэтому его и называют основным. Командный процессор DOS обрабатывает команды, вводимые пользователем. Утилиты DOS это программы, поставляемые вместе с операционной системой в виде отдельных файлов. Они выполняют действия обслуживающего характера, например, разметку дискет, проверку дисков и т.д. |
Оболочки это программы, созданные для упрощения работы со сложными программными системами, такими, например, как DOS. Они преобразуют неудобный командный пользовательский интерфейс в дружественный графический интерфейс или интерфейс типа "меню". Оболочки предоставляют пользователю удобный доступ к файлам и обширные сервисные услуги. |
Самая популярная у пользователей IBM-совместимого ПК оболочка пакет программ Norton Commander. Он обеспечивает:
В начале 90-х годов во всем мире огромную популярность приобрела графическая оболочка MS-Windows 3.х, преимущество которой состоит в том, что она облегчает использование компьютера, и её графический интерфейс вместо набора сложных команд с клавиатуры позволяет выбирать их мышью из меню практически мгновенно. Операционная среда Windows, работающая совместно с операционной системой DOS, реализует все свойства, необходимые для производительной работы пользователя, в том числе многозадачный режим.
Оболочка Norton Navigator это набор мощных программ для управления файлами, расширяющий возможности Windows. Позволяет экономить время практически на всех операциях: поиск файлов, копирование и перемещение файлов, открытие каталогов.
Windows NT (NT англ. New Technology) это операционная система, а не просто графическая оболочка. Она использует все возможности новейших моделей персональных компьютеров и работает без DOS.
Windows NT 32-разрядная ОС со встроенной сетевой поддержкой и развитыми многопользовательскими средствами. Она предоставляет пользователям истинную многозадачность, многопроцессорную поддержку, секретность, защиту данных и многое другое.
Эта операционная система очень удобна для пользователей, работающих в рамках локальной сети, для коллективных пользователей, особенно для групп, работающих над большими проектами и обменивающихся данными.
Windows 95 представляет собой универсальную высокопроизводительную многозадачную и многопотоковую 32-разрядную ОС нового поколения с графическим интерфейсом и расширенными сетевыми возможностями.
Windows 95 интегрированная среда, обеспечивающая эффективный обмен информацией между отдельными программами и предоставляющая пользователю широкие возможности работы с мультимедиа, обработки текстовой, графической. звуковой и видеоинформации.
Интегрированность подразумевает также совместное использование ресурсов компьютера всеми программами.
Эта операционная система обеспечивает работу пользователя в сети, предоставляя встроенные средства поддержки для обмена файлами и меры по их защите, возможность совместного использования принтеров, факсов и других общих ресурсов. Windows 95 позволяет отправлять сообщения электронной почтой, факсимильной связью, поддерживает удаленный доступ.
Применяемый в Windows 95 защищённый режим не позволяет прикладной программе в случае сбоя нарушить работоспособность системы, надежно предохраняет приложения от случайного вмешательства одного процесса в другой, обеспечивает определённую устойчивость к вирусам.
Пользовательский интерфейс Windows 95 прост и удобен.
В отличие от оболочки Windows 3 эта операционная система не нуждается в установке на компьютере операционной системы DOS. Она предназначена для установки на настольных ПК и компьютерах блокнотного типа с процессором 486 или Pentium.
Рекомендуемый размер оперативной памяти 8-16 Мбайт.
После включения компьютера и выполнения тестовых программ BIOS операционная система Windows 95 автоматически загружается с жесткого диска. После загрузки и инициализации системы на экране появляется рабочий стол, на котором размещены различные графические объекты. Пользовательский интерфейс спроектирован так, чтобы максимально облегчить усвоение этой операционной системы новичками и создать комфортные условия для пользователя.
Транслятор (англ. translator переводчик) это программа-переводчик. Она преобразует программу, написанную на одном из языков высокого уровня, в программу, состоящую из машинных команд. |
Трансляторы реализуются в виде компиляторов или интерпретаторов. С точки зрения выполнения работы компилятор и интерпретатор существенно различаются.
Компилятор (англ. compiler составитель, собиратель) читает всю программу целиком, делает ее перевод и создает законченный вариант программы на машинном языке, который затем и выполняется.
Интерпретатор (англ. interpreter истолкователь, устный переводчик) переводит и выполняет программу строка за строкой.
После того, как программа откомпилирована, ни сама исходная программа, ни компилятор более не нужны. В то же время программа, обрабатываемая интерпретатором, должна заново переводиться на машинный язык при каждом очередном запуске программы.
Откомпилированные программы работают быстрее, но интерпретируемые проще исправлять и изменять. |
Каждый конкретный язык ориентирован либо на компиляцию, либо на интерпретацию в зависимости от того, для каких целей он создавался. Например, Паскаль обычно используется для решения довольно сложных задач, в которых важна скорость работы программ. Поэтому данный язык обычно реализуется с помощью компилятора. С другой стороны, Бейсик создавался как язык для начинающих программистов, для которых построчное выполнение программы имеет неоспоримые преимущества. Иногда для одного языка имеется и компилятор, и интерпретатор. В этом случае для разработки и тестирования программы можно воспользоваться интерпретатором, а затем откомпилировать отлаженную программу, чтобы повысить скорость ее выполнения. |
Система программирования это система для разработки новых программ на конкретном языке программирования. |
Современные системы программирования обычно предоставляют пользователям мощные и удобные средства разработки программ. В них входят:
Популярные системы программирования Turbo Basic, Quick Basic, Turbo Pascal, Turbo C.
В последнее время получили распространение системы программирования, ориентированные на создание Windows-приложений:
Borland Delphi 3.0
Ниже для иллюстрации приведены на языках Бейсик, Паскаль и Си программы решения одной и той же простой задачи вычисления суммы S элементов одномерного массива A=(a1, a2, ..., an).
Язык Бейсик был создан в 1965 г. Дж. Кемени и Т.Курцем как язык для начинающих, облегчающий написание простых программ. Существуют сотни различных версий Бейсика от очень простых до усовершенствованных, содержащих множество дополнительных языковых конструкций. Бейсик очень популярный язык программирования. |
Программа на Бейсике |
Программа на Паскале |
Язык Паскаль был разработан в 1970г. Никласом Виртом как язык обучения студентов программированию. |
Язык Си (разработан Деннисом Ритчи в 1972 г.) соединяет свойства языка высокого уровня с возможностями эффективного использования ресурсов компьютера, которые обычно достигаются только при программировании на языке Ассемблера. |
Программа на СИ |
Инструментальные программные средства это программы, которые используются в ходе разработки, корректировки или развития других прикладных или системных программ. |
По своему назначению они близки системам программирования. К инструментальным программам, например, относятся:
Инструментальные программные средства могут оказать помощь на всех стадиях разработки ПО.
Текстовый редактор это программа, используемая специально для ввода и редактирования текстовых данных. |
Этими данными могут быть программа или какой-либо документ или же книга. Редактируемый текст выводится на экран, и пользователь может в диалоговом режиме вносить в него свои изменения.
Текстовые редакторы могут обеспечивать выполнение разнообразных функций, а именно:
Возможности текстовых редакторов различны от программ, предназначенных для подготовки небольших документов простой структуры, до программ для набора, оформления и полной подготовки к типографскому изданию книг и журналов (издательские системы).
Рис. 6.5. Окно редактора Microsoft Word
Наиболее известный текстовый редактор Microsoft Word.
Полнофункциональные издательские системы Microsoft Publisher, Corel Ventura и Adobe PageMaker. Издательские системы незаменимы для компьютерной верстки и графики. Значительно облегчают работу с многостраничными документами, имеют возможности автоматической разбивки текста на страницы, расстановки номеров страниц, создания заголовков и т.д. Создание макетов любых изданий от рекламных листков до многостраничных книг и журналов становится очень простым, даже для новичков.
Графический редактор это программа, предназначенная для автоматизации процессов построения на экране дисплея графических изображений. Предоставляет возможности рисования линий, кривых, раскраски областей экрана, создания надписей различными шрифтами и т.д. |
Рис. 6.6. Рисунок,
полученный с помощью
Corel Draw!
Увеличить изображение
Большинство редакторов позволяют обрабатывать изображения, полученные с помощью сканеров, а также выводить картинки в таком виде, чтобы они могли быть включены в документ, подготовленный с помощью текстового редактора.
Некоторые редакторы позволяют получать изображения трёхмерных объектов, их сечений, разворотов, каркасных моделей и т.п.
Пользуется известностью Corel DRAW! мощный графический редактор с функциями создания публикаций, снабжённый инструментами для редактирования графики и трёхмерного моделирования.
Эти системы позволяют наглядно представлять на экране различные данные и зависимости.
Системы деловой графики дают возможность выводить на экран различные виды графиков и диаграмм (рис 6.7):
Рис. 6.7. Круговые и столбиковые диаграммы
Системы научной и инженерной графики позволяют в цвете и в заданном масштабе отображать на экране следующие объекты:
Рис. 6.8. Чертеж с нанесенными изолиниями
Для построения легко воспринимаемых реалистических изображений трёхмерных объектов системы инженерной графики позволяют удалять линии, не видимые наблюдателю.
Существуют остроумные способы визуализации наиболее простых многомерных объектов множеств точек. Один из них носит название "лица Чернова" (Чернов современный американский математик).
Рис. 6.9. "Лица Чернова"
Этим способом можно отображать 10-20-мерные множества. Суть способа такова: каждому из измерений сопоставляется один из параметров схематически изображённого человеческого лица, например, первое измерение дает отношение высоты лица к ширине, второе размер носа,третье расстояние между глазами и т.д.
Таким образом, каждой точке исходного множества будет сопоставлено лицо. Рассматривая эти лица, можно отобрать похожие между собой или же выделить абсолютно непохожие и тем самым произвести некую классификацию исходного множества.
Табличный процессор это комплекс взаимосвязанных программ, предназначенный для обработки электронных таблиц. Электронная таблица это компьютерный эквивалент обычной таблицы, состоящей из строк и граф, на пересечении которых располагаются клетки, в которых содержится числовая информация, формулы или текст. |
Значение в числовой клетке таблицы может быть либо записано, либо рассчитано по соответствующей формуле; в формуле могут присутствовать обращения к другим клеткам (рис. 6.10).
Рис. 6.10. Электронная таблица Microsoft Excel
Каждый раз при изменении значения в клетке таблицы в результате записи в нее нового значения с клавиатуры пересчитываются также значения во всех тех клетках, в которых стоят величины, зависящие от данной клетки.
Графам и строкам можно присваивать наименования. Экран монитора трактуется как окно, через которое можно рассматривать таблицу целиком или по частям.
Табличные процессоры представляют собой удобное средство для проведения бухгалтерских и статистических расчетов. В каждом пакете имеются сотни встроенных математических функций и алгоритмов статистической обработки данных. Кроме того, имеются мощные средства для связи таблиц между собой, создания и редактирования электронных баз данных.
Специальные средства позволяют автоматически получать и распечатывать настраиваемые отчеты с использованием десятков различных типов таблиц, графиков, диаграмм, снабжать их комментариями и графическими иллюстрациями.
Табличные процессоры имеют встроенную справочную систему, предоставляющую пользователю информацию по конкретным командам меню и другие справочные данные. Многомерные таблицы позволяют быстро делать выборки в базе данных по любому критерию.
Самые популярные табличные процессоры Microsoft Excel (Эксель) и Lotus 1-2-3.
В Microsoft Excel автоматизированы многие рутинные операции, специальные шаблоны помогают создавать отчёты, импортировать данные и многое другое.
Lotus 1-2-3 профессиональный процессор электронных таблиц. Широкие графические возможности и удобный интерфейс пакета позволяют быстро ориентироваться в нём. С его помощью можно создать любой финансовый документ, отчёт для бухгалтерии, составить бюджет, а затем разместить все эти документы в базах данных.
База данных это один или несколько файлов данных, предназначенных для хранения, изменения и обработки больших объемов взаимосвязанной информации. |
В базе данных предприятия, например, может храниться:
Даже небольшие изменения какой-либо информации могут приводить к значительным изменениям в разных других местах.
Пример. Издание приказа о повышении в должности одного работника приводит к изменениям не только в личном деле работника, но и к изменениям в списках подразделения, в котором он работает, в ведомостях на зарплату, в графике отпусков и т.п.
Базы данных используются под управлением систем управления базами данных (СУБД).
Система управления базами данных (СУБД) это система программного обеспечения, позволяющая обрабатывать обращения к базе данных, поступающие от прикладных программ конечных пользователей. |
Рис. 6.11. Окно СУБД Access
Системы управления базами данных позволяют объединять большие объемы информации и обрабатывать их, сортировать, делать выборки по определённым критериям и т.п.
Современные СУБД дают возможность включать в них не только текстовую и графическую информацию, но и звуковые фрагменты и даже видеоклипы.
Простота использования СУБД позволяет создавать новые базы данных, не прибегая к программированию, а пользуясь только встроенными функциями.
СУБД обеспечивают правильность, полноту и непротиворечивость данных, а также удобный доступ к ним.
Популярные СУБД FoxPro, Access for Windows, Paradox.
Для менее сложных применений вместо СУБД используются информационно-поисковые системы (ИПС), которые выполняют следующие функции:
Библиотека стандартных подпрограмм это совокупность подпрограмм, составленных на одном из языков программирования и удовлетворяющих определенным единым требованиям к структуре, организации их входов и выходов, описаниям подпрограмм и т.п. |
Стандартные подпрограммы имеют единую форму обращения, что обеспечивает простоту и удобство настройки параметров подпрограммы на решение конкретной задачи.
В качестве примера можно привести библиотеку стандартных подпрограмм по численным математическим методам решения уравнений, вычисления интегралов, нахождения экстремумов и т.п.
Пакеты прикладных программ (ППП) это специальным образом организованные программные комплексы, рассчитанные на общее применение в определенной проблемной области и дополненные соответствующей технической документацией. |
В зависимости от характера решаемых задач различают следующие разновидности ППП:
Чтобы пользователь мог применить ППП для решения конкретной задачи, пакет должен обладать средствами настройки (иногда путём введения некоторых дополнений).
Каждый ППП обладает обычно рядом возможностей по методам обработки данных и формам их представления, полноте диагнос-тики, что дает возможность пользователю выбрать подходящий для конкретных условий вариант.
ППП обеспечивают значительное снижение требований к уровню профессиональной подготовки пользователей в области программирования, вплоть до возможности эксплуатации пакета без программиста.
Часто пакеты прикладных программ располагают базами данных для хранения данных и передачи их прикладным программам.
Интегрированные пакеты представляют собой набор нескольких программных продуктов, объединенных в единый удобный инструмент. Наиболее развитые из них включают в себя текстовый редактор, органайзер, электронную таблицу, СУБД, средства поддержки электронной почты, программу создания презентационной графики. |
Результаты, полученные отдельными подпрограммами, могут быть объединены в окончательный документ, содержащий табличный, графический и текстовый материал.
Интегрированные пакеты, как правило, содержат некоторое ядро, обеспечивающее возможность тесного взаимодействия между составляющими.
Пример: интегрированный пакет для написания книг, содержащих иллюстрации. Он содержит:
Наиболее известные интегрированные пакеты:
Microsoft Office. В этот мощный профессиональный пакет вошли такие необходимые программы, как текстовый редактор WinWord , электронная таблица Excel, программа создания презентаций PowerPoint, СУБД Access, средство поддержки электронной почты Mail. Мало того, все части этого пакета составляют единое целое, и даже внешне все программы выглядят единообразно, что облегчает как их освоение, так и ежедневное использование.
Microsoft Works это очень простой и удобный пакет, объединяющий в себе текстовый редактор, электронные таблицы и базы данных, а также телекоммуникационные средства для соединения с другими компьютерами по телефонным линиям. Пакет ориентирован на людей, не имеющих времени осваивать сложные продукты, на начинающих пользователей, а также на домашних пользователей.
Органайзеры это программы-электронные секретари. |
Lotus Organizer
Они позволяют эффективно распорядиться рабочим временем, финансовыми средствами и т.п. Обладают возможностью автоматизации регулярных действий, составления персональных и групповых расписаний, планирования встреч, ведения записной книжки. В их состав традиционной входят календарь, часы, калькулятор и т.п.
Lotus Organizer блокнот, разбитый по секциям: календарь, список дел, адресная и телефонная книга, планировщик, записная книжка, список памятных дат.
Microsoft Project позволяет спланировать проведение проектов и представить расписание в графическом виде, что очень удобно для сложных проектов.
Сетевое программное обеспечение предназначено для организации совместной работы группы пользователей на разных компьютерах. Позволяет организовать общую файловую структуру, общие базы данных, доступные каждому члену группы. Обеспечивает возможность передачи сообщений и работы над общими проектами, возможность разделения ресурсов. |
Novell NetWare сетевая операционная система. Предоставляет пользователям возможность совместно использовать файлы, принтеры и другое оборудование. Содержит службу каталогов, общую распределённую базу данных пользователей и ресурсов сети.
6.1. Что такое программа?
6.2. Что включает в себя понятие "программное обеспечение"?
6.3. Назовите и характеризуйте основные категории программного обеспечения.
6.4. В чем отличие прикладных программ от системных и инструментальных?
6.5. Что входит в системное программное обеспечение?
6.6. В чем состоит назначение операционной системы?
6.7. Характеризуйте основные классы операционных систем.
6.8. Опишите процесс начальной загрузки операционной системы в оперативную память компьютера.
6.9. Что такое файл?
6.10. Как организована файловая система?
6.11. Какой модуль операционной системы осуществляет обслуживание файлов?
6.12. Приведите пример иерархической файловой структуры.
6.13. Что такое базовая система ввода-вывода (BIOS), и в каком разделе памяти она размещается?
6.14. Из каких основных модулей состоит операционная система MS-DOS?
6.15. Назовите основные разновидности программ-утилит и дайте им краткую характеристику.
6.16. К каким категориям программного обеспечения относятся программные пакеты:
Norton Commander;
MS-DOS;
Windows 3.x;
Windows-NT, Windows 95;
Microsoft Word;
Adobe PageMaker;
Turbo Bascal, Turbo Basic;
Microsoft Excel, Lotus;
FoxPro, Access for Windows;
Microsoft Office, Microsoft Works?
6.17. Для чего предназначен пакет программ Norton Commander?
6.18. Какой вид интерфейса удобнее для пользователя командный или графический?
6.19. Чем объясняется широкая популярность пакета Norton Commander?
6.20. Что такое компьютерные вирусы, в чем состоят их вредные действия?
6.21. Какие существуют средства борьбы с компьютерными вирусами?
6.22. В чем суть процесса сжатия информации?
6.23. Характеризуйте основные особенности операционных систем Windows-NT и Windows 95.
6.24. Какие языки и системы программирования вы знаете и в чем их особенности?
6.25. В чем отличие процесса интерпретации от процесса компиляции?
6.26. Назовите основные функции текстовых редакторов.
6.27. Какие дополнительные возможности редактирования текстов обеспечивают полнофункциональные издательские системы по сравнению с текстовыми редакторами?
6.28. Назовите функциональные возможности табличного процессора.
6.29. Какие виды входных данных могут быть введены в клетки электронных таблиц?
6.30. Дайте определение и опишите назначение базы данных.
6.31. Приведите пример возможного наполнения базы данных вашего учебного заведения.
6.32. Каковы основные функциональные возможности систем управления базами данных?
6.33. Что такое информационно-поисковые системы?
6.34. Дайте определение пакета прикладных программ.
6.35. Каково назначение библиотек стандартных программ?
6.36. Дайте определения интегрированного пакета программ.
6.37. Каково назначение сетевого программного обеспечения?
***********************************
Алгоpитм точное и понятное пpедписание исполнителю совеpшить последовательность действий, направленных на решение поставленной задачи. |
Название "алгоритм" произошло от латинской формы имени среднеазиатского математика аль-Хорезми Algorithmi. Алгоритм одно из основных понятий информатики и математики.
Исполнитель алгоритма это некоторая абстрактная или реальная (техническая, биологическая или биотехническая) система, способная выполнить действия, предписываемые алгоритмом. |
Исполнителя хаpактеpизуют:
Сpеда (или обстановка) это "место обитания" исполнителя. Напpимеp, для исполнителя Pобота из школьного учебника [1] сpеда это бесконечное клеточное поле. Стены и закpашенные клетки тоже часть сpеды. А их pасположение и положение самого Pобота задают конкpетное состояние среды.
Система команд. Каждый исполнитель может выполнять команды только из некотоpого стpого заданного списка системы команд исполнителя. Для каждой команды должны быть заданы условия пpименимости (в каких состояниях сpеды может быть выполнена команда) и описаны pезультаты выполнения команды. Напpимеp, команда Pобота "ввеpх" может быть выполнена, если выше Pобота нет стены. Ее pезультат смещение Pобота на одну клетку ввеpх.
После вызова команды исполнитель совеpшает соответствующее элементаpное действие.
Отказы исполнителя возникают, если команда вызывается пpи недопустимом для нее состоянии сpеды.
Обычно исполнитель ничего не знает о цели алгоpитма. Он выполняет все полученные команды, не задавая вопросов "почему" и "зачем". |
В информатике универсальным исполнителем алгоритмов является компьютер.
Основные свойства алгоритмов следующие:
Понятность для исполнителя т.е. исполнитель алгоритма должен знать, как его выполнять.
Дискpетность (прерывность, раздельность) т.е. алгоpитм должен пpедставлять пpоцесс pешения задачи как последовательное выполнение пpостых (или pанее опpеделенных) шагов (этапов).
Опpеделенность т.е. каждое пpавило алгоpитма должно быть четким, однозначным и не оставлять места для пpоизвола. Благодаpя этому свойству выполнение алгоpитма носит механический хаpактеp и не тpебует никаких дополнительных указаний или сведений о pешаемой задаче.
Pезультативность (или конечность). Это свойство состоит в том, что алгоpитм должен пpиводить к pешению задачи за конечное число шагов.
Массовость. Это означает, что алгоpитм pешения задачи pазpабатывается в общем виде, т.е. он должен быть пpименим для некотоpого класса задач, pазличающихся лишь исходными данными. Пpи этом исходные данные могут выбиpаться из некотоpой области, котоpая называется областью пpименимости алгоpитма.
На практике наиболее распространены следующие формы представления алгоритмов:
Словесный способ записи алгоритмов представляет собой описание последовательных этапов обработки данных. Алгоритм задается в произвольном изложении на естественном языке. |
Например. Записать алгоритм нахождения наибольшего общего делителя (НОД) двух натуральных чисел.
Алгоритм может быть следующим:
Описанный алгоритм применим к любым натуральным числам и должен приводить к решению поставленной задачи. Убедитесь в этом самостоятельно, определив с помощью этого алгоритма наибольший общий делитель чисел 125 и 75.
Словесный способ не имеет широкого распространения по следующим причинам:
Графический способ представления алгоритмов является более компактным и наглядным по сравнению со словесным.
При графическом представлении алгоритм изображается в виде последовательности связанных между собой функциональных блоков, каждый из которых соответствует выполнению одного или нескольких действий. |
Такое графическое представление называется схемой алгоритма или блок-схемой.
В блок-схеме каждому типу действий (вводу исходных данных, вычислению значений выражений, проверке условий, управлению повторением действий, окончанию обработки и т.п.) соответствует геометрическая фигура, представленная в виде блочного символа. Блочные символы соединяются линиями переходов, определяющими очередность выполнения действий.
В таблице 7.1 приведены наиболее часто употребляемые символы.
Название символа |
Обозначение и пример заполнения |
Пояснение |
Процесс |
Вычислительное действие или последовательность действий |
|
Решение |
Проверка условий |
|
Модификация |
Начало цикла |
|
Предопределенный процесс |
Вычисления по подпрограмме, стандартной подпрограмме |
|
Ввод-вывод |
Ввод-вывод в общем виде |
|
Пуск-останов |
Начало, конец алгоритма, вход и выход в подпрограмму |
|
Документ |
Вывод результатов на печать |
Блок "процесс" применяется для обозначения действия или последовательности действий, изменяющих значение, форму представления или размещения данных. Для улучшения наглядности схемы несколько отдельных блоков обработки можно объединять в один блок. Представление отдельных операций достаточно свободно.
Блок "решение" используется для обозначения переходов управления по условию. В каждом блоке "решение" должны быть указаны вопрос, условие или сравнение, которые он определяет.
Блок "модификация" используется для организации циклических конструкций. (Слово модификация означает видоизменение, преобразование). Внутри блока записывается параметр цикла, для которого указываются его начальное значение, граничное условие и шаг изменения значения параметра для каждого повторения.
Блок "предопределенный процесс" используется для указания обращений к вспомогательным алгоритмам, существующим автономно в виде некоторых самостоятельных модулей, и для обращений к библиотечным подпрограммам.
Псевдокод представляет собой систему обозначений и правил, предназначенную для единообразной записи алгоритмов. |
Он занимает промежуточное место между естественным и формальным языками.
С одной стороны, он близок к обычному естественному языку, поэтому алгоритмы могут на нем записываться и читаться как обычный текст. С другой строны, в псевдокоде используются некоторые формальные конструкции и математическая символика, что приближает запись алгоритма к общепринятой математической записи.
В псевдокоде не приняты строгие синтаксические правила для записи команд, присущие формальным языкам, что облегчает запись алгоритма на стадии его проектирования и дает возможность использовать более широкий набор команд, рассчитанный на абстрактного исполнителя. Однако в псевдокоде обычно имеются некоторые конструкции, присущие формальным языкам, что облегчает переход от записи на псевдокоде к записи алгоритма на формальном языке. В частности, в псевдокоде, так же, как и в формальных языках, есть служебные слова, смысл которых определен раз и навсегда. Они выделяются в печатном тексте жирным шрифтом, а в рукописном тексте подчеркиваются. Единого или формального определения псевдокода не существует, поэтому возможны различные псевдокоды, отличающиеся набором служебных слов и основных (базовых) конструкций.
Примером псевдокода является школьный алгоритмический язык в русской нотации (школьный АЯ), описанный в учебнике А.Г. Кушниренко и др. "Основы информатики и вычислительной техники", 1991. Этот язык в дальнейшем мы будем называть просто "алгоритмический язык".
Основные служебные слова
алг (алгоритм) |
сим (символьный) |
дано |
для |
да |
арг (аргумент) |
лит (литерный) |
надо |
от |
нет |
рез (результат) |
лог (логический) |
если |
до |
при |
нач (начало) |
таб(таблица) |
то |
знач |
выбор |
кон (конец) |
нц (начало цикла) |
иначе |
и |
ввод |
цел (целый) |
кц (конец цикла) |
все |
или |
вывод |
вещ (вещественный) |
длин (длина) |
пока |
не |
утв |
Общий вид алгоритма: алг название алгоритма (аргументы и результаты) дано условия применимости алгоритма надо цель выполнения алгоритма нач описание промежуточных величин | последовательность команд (тело алгоритма) кон |
Часть алгоритма от слова алг до слова нач называется заголовком, а часть, заключенная между словами нач и кон телом алгоритма.
В предложении алг после названия алгоритма в круглых скобках указываются характеристики (арг, рез) и тип значения (цел, вещ, сим, лит или лог) всех входных (аргументы) и выходных (результаты) переменных. При описании массивов (таблиц) используется служебное слово таб, дополненное граничными парами по каждому индексу элементов массива.
Примеры предложений алг:
Предложения дано и надо не обязательны. В них рекомендуется записывать утверждения, описывающие состояние среды исполнителя алгоритма, например:
Здесь в предложениях дано и надо после знака "|" записаны комментарии. Комментарии можно помещать в конце любой строки. Они не обрабатываются транслятором, но существенно облегчают понимание алгоритма.
Команды школьного АЯ
Оператор присваивания. Служит для вычисления выражений и присваивания их значений переменным. Общий вид: А := В, где знак ":=" означает команду заменить прежнее значение переменной, стоящей в левой части, на вычисленное значение выражения, стоящего в правой части.
Например, a:=(b+c)*sin(Pi/4); i:=i+1.
Для ввода и вывода данных используют команды
Для ветвления применяют команды если и выбор, для организации циклов команды для и пока, описанные в разделе 7.9.
Пример записи алгоритма на школьном АЯ
алг Сумма квадратов (арг цел n, рез цел S)
дано | n > 0
надо | S = 1*1 + 2*2 + 3*3 + ... + n*n
нач цел i
ввод n; S:=0
нц для i от 1 до n
S:=S+i*i
кц
вывод "S = ", S
кон
Алгоритмы можно представлять как некоторые структуры, состоящие из отдельных базовых (т.е. основных) элементов. Естественно, что при таком подходе к алгоритмам изучение основных принципов их конструирования должно начинаться с изучения этих базовых элементов. Для их описания будем использовать язык схем алгоритмов и школьный алгоритмический язык.
Логическая структура любого алгоритма может быть представлена комбинацией трех базовых структур: следование, ветвление, цикл. |
Характерной особенностью базовых структур является наличие в них одного входа и одного выхода.
1. Базовая структура следование. Образуется из последовательности действий, следующих одно за другим:
Школьный алгоритмический язык |
Язык блок-схем |
действие 1 |
2. Базовая структура ветвление. Обеспечивает в зависимости от результата проверки условия (да или нет) выбор одного из альтернативных путей работы алгоритма. Каждый из путей ведет к общему выходу, так что работа алгоритма будет продолжаться независимо от того, какой путь будет выбран.
Структура ветвление существует в четырех основных вариантах:
Школьный алгоритмический язык |
Язык блок-схем |
1. если-то |
|
если условие то действия все |
|
2. если-то-иначе |
|
если условие то действия 1 иначе действия 2 все |
|
3. выбор |
|
выбор при условие 1: действия 1 при условие 2: действия 2 . . . . . . . . . . . . при условие N: действия N все |
|
4. выбор-иначе |
|
выбор при условие 1: действия 1 при условие 2: действия 2 . . . . . . . . . . . . при условие N: действия N иначе действия N+1 все |
Примеры команды если
Школьный алгоритмический язык |
Язык блок-схем |
если x > 0 то y := sin(x) все |
|
если a > b то a := 2*a; b := 1 иначе b := 2*b все |
|
выбор при n = 1: y := sin(x) при n = 2: y := cos(x) при n = 3: y := 0 все |
|
выбор при a > 5: i := i+1 при a = 0: j := j+1 иначе i := 10; j:=0 все |
3. Базовая структура цикл. Обеспечивает многократное выполнение некоторой совокупности действий, которая называется телом цикла. Основные разновидности циклов представлены в таблице:
Школьный алгоритмический язык |
Язык блок-схем |
Цикл типа пока. Предписывает выполнять тело цикла до тех пор, пока выполняется условие, записанное после слова пока. |
|
нц пока условие тело цикла (последовательность действий) кц |
|
Цикл типа для. Предписывает выполнять тело цикла для всех значений некоторой переменной (параметра цикла) в заданном диапазоне. |
|
нц для i от i1 до i2 тело цикла (последовательность действий) кц |
Примеры команд пока и для
Школьный алгоритмический язык |
Язык блок-схем |
нц пока i <= 5 S := S+A[i] i := i+1 кц |
|
нц для i от 1 до 5 X[i] := i*i*i Y[i] := X[i]/2 кц |
Особенностью итерационного цикла является то,что число повторений операторов тела цикла заранее неизвестно. Для его организации используется цикл типа пока. Выход из итерационного цикла осуществляется в случае выполнения заданного условия. |
На каждом шаге вычислений происходит последовательное приближение и проверка условия достижения искомого результата.
Пример. Составить алгоритм вычисления суммы ряда
с заданной точностью (для данного знакочередующегося степенного ряда требуемая точность будет достигнута, когда очередное слагаемое станет по абсолютной величине меньше).
Вычисление сумм типичная циклическая задача. Особенностью же нашей конкретной задачи является то, что число слагаемых (а, следовательно, и число повторений тела цикла) заранее неизвестно. Поэтому выполнение цикла должно завершиться в момент достижения требуемой точности.
При составлении алгоритма нужно учесть, что знаки слагаемых чередуются и степень числа х в числителях слагаемых возрастает.
Решая эту задачу "в лоб" путем вычисления на каждом i-ом шаге частичной суммы
S:=S+(-1)**(i-1)*x**i/i ,
мы получим очень неэффективный алгоритм, требующий выполнения большого числа операций. Гораздо лучше организовать вычисления следующим образом: если обозначить числитель какого-либо слагаемого буквой р, то у следующего слагаемого числитель будет равен -р*х (знак минус обеспечивает чередование знаков слагаемых), а само слагаемое m будет равно p/i, где i - номер слагаемого.
Сравните эти два подхода по числу операций.
Алгоритм на школьном АЯ |
Блок-схема алгоритма |
алг Сумма (арг вещ x, Eps, рез вещ S) дано | 0 < x < 1 надо | S = x - x**2/2 + x**3/3 - ... нач цел i, вещ m, p ввод x, Eps S:=0; i:=1 | начальные значения m:=1; p:=-1 нц пока abs(m) > Eps p:=-p*x | p - числитель | очередного слагаемого m:=p/i | m - очередное слагаемое S:=S+m | S - частичная сумма i:=i+1 | i - номер | очередного слагаемого кц вывод S кон |
Алгоритм, в состав которого входит итерационный цикл, называется итеpационным алгоpитмом. Итерационные алгоритмы используются при реализации итерационных численных методов.
В итерационных алгоритмах необходимо обеспечить обязательное достижение условия выхода из цикла (сходимость итерационного процесса). В противном случае произойдет зацикливание алгоритма, т.е. не будет выполняться основное свойство алгоритма результативность.
Возможны случаи, когда внутри тела цикла необходимо повторять некоторую последовательность операторов, т. е. организовать внутренний цикл. Такая структура получила название цикла в цикле или вложенных циклов. Глубина вложения циклов (то есть количество вложенных друг в друга циклов) может быть различной.
При использовании такой структуры для экономии машинного времени необходимо выносить из внутреннего цикла во внешний все операторы, которые не зависят от параметра внутреннего цикла.
Пример вложенных циклов для
Вычислить сумму элементов заданной матрицы А(5,3).
Матрица А |
нц для i от 1 до 5 нц для j от 1 до 3 S:=S+A[i,j] кц кц |
Пример вложенных циклов пока
Вычислить произведение тех элементов заданной матрицы A(10,10), которые расположены на пересечении четных строк и четных столбцов.
i:=2; P:=1 нц пока i <= 10 j:=2 нц пока j <= 10 P:=P*A[i,j] j:=j+2 кц i:=i+2 кц |
При записи алгоритма в словесной форме, в виде блок-схемы или на псевдокоде допускается определенный произвол при изображении команд. Вместе с тем такая запись точна настолько, что позволяет человеку понять суть дела и исполнить алгоритм.
Однако на практике в качестве исполнителей алгоритмов используются специальные автоматы компьютеры. Поэтому алгоритм, предназначенный для исполнения на компьютере, должен быть записан на "понятном" ему языке. И здесь на первый план выдвигается необходимость точной записи команд, не оставляющей места для произвольного толкования их исполнителем.
Следовательно, язык для записи алгоритмов должен быть формализован. Такой язык принято называть языком программирования, а запись алгоритма на этом языке программой для компьютера.
В настоящее время в мире существует несколько сотен реально используемых языков программирования. Для каждого есть своя область применения.
Любой алгоритм, как мы знаем, есть последовательность предписаний, выполнив которые можно за конечное число шагов перейти от исходных данных к результату. В зависимости от степени детализации предписаний обычно определяется уровень языка программирования чем меньше детализация, тем выше уровень языка.
По этому критерию можно выделить следующие уровни языков программирования:
Машинные языки и машинно-ориентированные языки это языки низкого уровня, требующие указания мелких деталей процесса обработки данных.
Языки же высокого уровня имитируют естественные языки, используя некоторые слова разговорного языка и общепринятые математические символы. Эти языки более удобны для человека.
Языки высокого уровня делятся на:
Каждый компьютер имеет свой машинный язык, то есть свою совокупность машинных команд, которая отличается количеством адресов в команде, назначением информации, задаваемой в адресах, набором операций, которые может выполнить машина и др.
При программировании на машинном языке программист может держать под своим контролем каждую команду и каждую ячейку памяти, использовать все возможности имеющихся машинных операций.
Но процесс написания программы на машинном языке очень трудоемкий и утомительный. Программа получается громоздкой, труднообозримой, ее трудно отлаживать, изменять и развивать.
Поэтому в случае, когда нужно иметь эффективную программу, в максимальной степени учитывающую специфику конкретного компьютера, вместо машинных языков используют близкие к ним машинно-ориентированные языки (ассемблеры).
Язык ассемблера это система обозначений, используемая для представления в удобочитаемой форме программ, записанных в машинном коде. |
Он позволяет программисту пользоваться текстовыми мнемоническими (то есть легко запоминаемыми человеком) кодами, по своему усмотрению присваивать символические имена регистрам компьютера и памяти, а также задавать удобные для себя способы адресации. Кроме того, он позволяет использовать различные системы счисления (например, десятичную или шестнадцатеричную) для представления числовых констант, использовать в программе комментарии и др.
Перевод программы с языка ассемблера на машинный язык осуществляется специальной программой, которая также называется ассемблером и является, по сути, простейшим транслятором.
Основные преимущества таковы:
Таким образом, алгоритмические языки в значительной мере являются машинно-независимыми. Они облегчают работу программиста и повышают надежность создаваемых программ.
Алгоритмический язык (как и любой другой язык) образуют три его составляющие: алфавит, синтаксис и семантика. |
Алфавит это фиксированный для данного языка набор основных символов, т.е. "букв алфавита", из которых должен состоять любой текст на этом языке никакие другие символы в тексте не допускаются.
Синтаксис это правила построения фраз, позволяющие определить, правильно или неправильно написана та или иная фраза. Точнее говоря, синтаксис языка представляет собой набор правил, устанавливающих, какие комбинации символов являются осмысленными предложениями на этом языке.
Семантика определяет смысловое значение предложений языка. Являясь системой правил истолкования отдельных языковых конструкций, семантика устанавливает, какие последовательности действий описываются теми или иными фразами языка и, в конечном итоге, какой алгоритм определен данным текстом на алгоритмическом языке.
Каждое понятие алгоритмического языка подразумевает некоторую синтаксическую единицу (конструкцию) и определяемые ею свойства программных объектов или процесса обработки данных.
Понятие языка определяется во взаимодействии синтаксических и семантических правил. Синтаксические правила показывают, как образуется данное понятие из других понятий и букв алфавита, а семантические правила определяют свойства данного понятия |
Основными понятиями в алгоритмических языках обычно являются следующие.
Имена (идентификаторы) употpебляются для обозначения объектов пpогpаммы (пеpеменных, массивов, функций и дp.).
Опеpации. Типы операций:
Данные величины, обpабатываемые пpогpаммой. Имеется тpи основных вида данных: константы, пеpеменные и массивы.
Пpимеpы констант:
Выpажения пpедназначаются для выполнения необходимых вычислений, состоят из констант, пеpеменных, указателей функций (напpимеp, exp(x)), объединенных знаками опеpаций.
Выражения записываются в виде линейных последовательностей символов (без подстрочных и надстрочных символов, "многоэтажных" дробей и т.д.), что позволяет вводить их в компьютер, последовательно нажимая на соответствующие клавиши клавиатуры.
Различают выражения арифметические, логические и строковые.
Операторы (команды). Оператор это наиболее крупное и содержательное понятие языка: каждый оператор представляет собой законченную фразу языка и определяет некоторый вполне законченный этап обработки данных. В состав опеpатоpов входят:
Операторы подpазделяются на исполняемые и неисполняемые. Неисполняемые опеpатоpы пpедназначены для описания данных и стpуктуpы пpогpаммы, а исполняемые для выполнения pазличных действий (напpимеp, опеpатоp пpисваивания, опеpатоpы ввода и вывода, условный оператор, операторы цикла, оператор процедуры и дp.).
При решении различных задач с помощью компьютера бывает необходимо вычислить логарифм или модуль числа, синус угла и т.д.
Вычисления часто употребляемых функций осуществляются посредством подпрограмм, называемых стандартными функциями, которые заранее запрограммированы и встроены в транслятор языка. |
Таблица стандартных функций школьного алгоритмического языка
Название и математическое обозначение функции |
Указатель функции |
|
Абсолютная величина (модуль) |
| х | |
abs(x) |
Корень квадратный |
sqrt(x) |
|
Натуральный логарифм |
ln x |
ln(x) |
Десятичный логарифм |
lg x |
lg(x) |
Экспонента (степень числа е " 2.72) |
ex |
exp(x) |
Знак числа x (-1,если х<0; 0,если x=0; 1,если x>0) |
sign x |
sign(x) |
Целая часть х (т.е. максимальное целое число,не превосходящее х) |
|
int(x) |
Минимум из чисел х и y |
|
min(x,y) |
Максимум из чисел х и y |
|
max(x,y) |
Частное от деления целого х на целое y |
|
div(x,y) |
Остаток от деления целого х на целое y |
|
mod(x,y) |
Случайное число в диапазоне от 0 до х-1 |
|
rnd(x) |
Синус (угол в радианах) |
sin x |
sin(x) |
Косинус (угол в радианах) |
cos x |
cos(x) |
Тангенс (угол в радианах) |
tg x |
tg(x) |
Котангенс (угол в радианах) |
ctg x |
ctg(x) |
Арксинус (главное значение в радианах) |
arcsin x |
arcsin(x) |
Арккосинус (главное значение в радианах) |
arccos x |
arccos(x) |
Арктангенс (главное значение в радианах) |
arctg x |
arctg(x) |
Арккотангенс (главное значение в радианах) |
arcctg x |
arcctg(x) |
В качестве аргументов функций можно использовать константы, переменные и выражения. Например:
sin(3.05) |
sin(x) |
sin(2*y+t/2) |
sin((exp(x)+1)**2) |
Каждый язык программирования имеет свой набор стандартных функций.
Арифметические выражения записываются по следующим правилам:
Примеры записи арифметических выражений
Математическая запись |
Запись на школьном алгоритмическом языке |
x*y/z |
|
x/(y*z) или x/y/z |
|
(a**3+b**3)/(b*c) |
|
(a[i+1]+b[i-1])/(2*x*y) |
|
(-b+sqrt(b*b-4*a*c))/(2*a) |
|
(x<0) |
sign(x)*abs(x)**(1/5) |
0.49*exp(a*a-b*b)+ln(cos(a*a))**3 |
|
x/(1+x*x/(3+(2*x)**3)) |
Типичные ошибки в записи выражений:
5x+1 |
Пропущен знак умножения между 5 и х |
В записи логических выражений помимо арифметических операций сложения, вычитания, умножения, деления и возведения в степень используются операции отношения < (меньше), <= (меньше или равно), > (больше), >= (больше или равно), = (равно), <> (не равно), а также логические операции и, или, не.
Примеры записи логических выражений, истинных при выполнении указанных условий.
Условие |
Запись на школьном алгоритмическом языке |
Дробная часть вещественого числа a равна нулю |
int(a) = 0 |
Целое число a четное |
mod(a,2) = 0 |
Целое число a нечетное |
mod(a,2) = 1 |
Целое число k кратно семи |
mod(a,7) = 0 |
Каждое из чисел a,b положительно |
(a>0) и (b>0) |
Только одно из чисел a,b положительно |
((a>0) и (b<=0)) или |
Хотя бы одно из чисел a,b,c является отрицательным |
(a<0) или (b<0) или (c<0) |
Число x удовлетворяет условию a<x<b |
(x>a) и (x<b) |
Число x имеет значение в промежутке [1, 3] |
(x>=1) и (x<=3) |
Целые числа a и b имеют одинаковую четность |
((mod(a,2)=0) и (mod(b,2)=0) или |
Точка с координатами (x,y) лежит в круге радиуса r с центром в точке (a,b) |
(x-a)**2+(y-b)**2<r*r |
Уравнение ax^2+bx+c=0 не имеет действительных корней |
b*b-4*a*c<0 |
Точка (x,y) принадлежит первому или третьему квадранту |
((x>0) и (y>0)) или |
Точка (x,y) принндлежит внешности единичного круга с центром в начале координат или его второй четверти |
(x*x+y*y>1) или |
Целые числа a и b являются взаимнопротивоположными |
a = -b |
Целые числа a и b являются взаимнообратными |
a*b = 1 |
Число a больше среднего арифметического чисел b,c,d |
a>(b+c+d)/3 |
Число a не меньше среднего геометрического чисел b,c,d |
a>=(b+c+d)**(1/3) |
Хотя бы одна из логических переменных F1 и F2 имеет значение да |
F1 или F2 |
Обе логические переменые F1 и F2 имеют значение да |
F1 и F2 |
Обе логические переменые F1 и F2 имеют значение нет |
не F1 и не F2 |
Логическая переменная F1 имеет значение да, а логическая переменная F2 имеет значение нет |
F1 и не F2 |
Только одна из логических переменных F1 и F2 имеет значение да |
(F1 и не F2) или |
7.1. Запишите по правилам алгоритмического языка выражения:
a) |
e) |
||
б) |
ж) |
||
в) |
з) |
||
г) |
и) |
||
д) |
к) |
[ Ответ ]
7.2. Запишите в обычной математической форме арифметические выражения:
а) a/b**2; |
л) 5*arctg(x)-arctg(y)/4; |
[ Ответ ]
7.3. Вычислите значения арифметических выражений при x=1:
а) abs(x-3)/ln(exp(3))*2/lg(10000);
Решение: abs(1-3)=2; ln(exp(3))=3; lg(10000)=4; 2/3*2/4=0.33;
б) sign(sqrt(sqrt(x+15)))*2**2**2;
в) int(-2.1)*int(-2.9)/int(2.9)+x;
г) -sqrt(x+3)**2**(sign(x+0.5)*3)+tg(0);
д) lg(x)+cos(x**2-1)*sqrt(x+8)-div(2,5);
е) sign(x-2)*sqrt(int(4.3))/abs(min(2,-1));
ж) div(10,x+2)*mod(10,x+6)/max(10,x)*mod(2,5).
[ Ответ ]
7.4. Запишите арифметические выражения, значениями которых являются:
а) площадь треугольника со сторонами a, b, c (a, b, c>0) и полупериметром p;
Ответ: sqrt(p*(p-a)*(p-b)*(p-c));
б) среднее арифметическое и среднее геометрическое чисел a, b, c, d;
в) расстояние от точки с координатами (x,y) до точки (0,0);
г) синус от x градусов;
д) площадь поверхности куба (длина ребра равна а);
е) радиус описанной сферы куба (длина ребра равна а);
ж) координаты точки пересечения двух прямых, заданных уравнениями
a1x+b1y+c1=0 и a2x+b2y+c2=0 (прямые не параллельны).
[ Ответ ]
7.5. Вычислите значения логических выражений:
а) x*x+y*y<=9 при x=1, y=-2
Ответ: да;
б) b*b-4*a*c<0 при a=2, b=1, c=-2;
в) (a>=1) и (a<=2) при a=1.5;
г) (a<1) или (a>1.2) при a=1.5;
д) (mod(a,7)=1) и (div(a,7)=1) при a=8;
е) не ((a>b) и (a<9) или (а*а=4)) при a=5, b=4.
[ Ответ ]
7.6. Запишите логические выражения, истинные только при выполнении указанных условий:
а) x принадлежит отрезку [a, b]
Ответ: (x>=a) и (x<=b);
б) x лежит вне отрезка [a, b];
в) x принадлежит отрезку [a, b] или отрезку [c, d];
г) x лежит вне отрезков [a, b] и [c, d];
д) целое k является нечетным числом;
е) целое k является трехзначным числом, кратным пяти;
ж) элемент ai,j двумерного массива находится на пересечении нечетной строки и четного столбца;
з) прямые a1x+b1y+c1=0 и a2x+b2y+c2=0 параллельны;
и) из чисел a, b, c меньшим является с, а большим b;
к) среди чисел a, b, c, d есть взаимно противоположные;
л) среди целых чисел a, b, c есть хотя бы два четных;
м) из отрезков с длинами a, b, c можно построить треугольник;
н) треугольники со сторонами a1, b1, c1 и a2, b2, c2 подобны;
о) точка с координатами (x,y) принадлежит внутренней области треугольника с вершинами A(0,5), B(5,0) и C(1,0);
п) точка с координатами (x,y) принадлежит области, внешней по отношению к треугольнику с вершинами A(0,5), B(1,0) и C(5,0);
р) четырехугольник со сторонами a, b, c и d является ромбом.
[ Ответ ]
7.7. Начертите на плоскости (x,y) область, в которой и только в которой истинно указанное выражение. Границу, не принадлежащую этой области, изобразите пунктиром.
а) (x<=0) и (y>=0) |
е) ((x-2)**2+y*y<=4) и (y>x/2) |
б) (x>=0) или (y<=0) |
ж) (x*x+y*y<1) и (y>x*x); |
[ Ответ ]
7.8. Запишите логическое выражение, которое принимает значение "истина" тогда и только тогда, когда точка с координатами (x, y) принадлежит заштрихованной области.
[ Ответ ]
7.9. Пусть a=3, b=5, c=7. Какие значения будут иметь эти переменные в результате выполнения последовательности операторов:
а) a:=a+1; b:=a+b; c:=a+b; a:=sqrt(a)
Решение: a=3+1=4, b=4+5=9, c=4+9=13, a= {корень из}4 =2.
Ответ: а=2, b=9, c=13;
б) с:=a*b+2; b:=b+1; a:=c-b**2; b:=b*a;
в) b:=b+a; c:=c+b; b:=1/b*c;
г) p:=c; c:=b; b:=a; a:=p; c:=a*b*c*p;
д) c:=a**(b-3); b:=b-3; a:=(c+1)/2*b; c:=(a+b)*a;
е) x:=a; a:=b; b:=c; c:=x; a:=sqrt(a+b+c+x-2);
ж) b:=(a+c)**2; a:=lg(b**2)**2; c:=c*a*b.
[ Ответ ]
7.10. Задайте с помощью операторов присваивания следующие действия:
а) массив X=(x1, x2) преобразовать по правилу: в качестве x1 взять сумму, а в качестве х2 произведение исходных компонент;
Решение: c:=x[1]; x[1]:=x[1]+x[2]; x[2]:=c*x[2]
б) поменять местами значения элементов массива X=(x1, x2);
в) в массиве A(N) компоненту с номером i (1<i<N) заменить полусуммой исходных соседних с нею компонент, соседнюю справа компоненту заменить на нуль, а соседнюю слева компоненту увеличить на 0.5;
г) u=max(x,y,z)+min(x-z,y+z,y,z);
[ Ответ ]
7.11. Задайте с помощью команд если или выбор вычисления по формулам:
a) |
||
б) |
||
в) |
|
|
г) |
||
д) |
||
е) |
||
ж) |
если точка лежит внутри круга радиусом r (r>0) с центром в точке (a,b) |
[ Ответ ]
7.12. Постройте графики функций y(x), заданных командами если:
а) если x<=-1 то y:=1/x**2 иначе если x<=2 то y:=x*x иначе y:=4 все все |
в) если x<-0.5 то y:=1/abs(x) иначе если x<1 то y:=2 иначе y:=1/(x-0.5) все все |
Решение |
г) если x<0 то y:=1 иначе если x<3.14 то y:=cos(x) иначе y:=-1 все все |
б) если x<-5 то y:=-5 иначе если x<0 то y:=x иначе если x<3 то y:=2*x иначе y:=6 все все все |
д) если abs(x)>2 то y:=x*x иначе если x<0 то y:=-2*x иначе если x>=1 то y:=4 иначе y:=4*x*x все все все |
[ Ответ ]
7.13. Определите значение целочисленной переменной S после выполнения операторов:
а) S:=128 нц для i от 1 до 4 S:=div(S,2) кц |
Решение i S
128 1 128/2=64 2 64/2=32 3 32/2=16 4 16/2=8 Ответ: S=8 |
г) S:=0 нц для i от 1 до 2 нц для j от 2 до 3 S:=S+i+j кц кц |
Решение i j S
0 1 2 0+1+2=3
3 3+1+3=7 2 2 7+2+2=11
3 11+2+3=16 Ответ: S=16 |
б) S:=1; a:=1 нц для i от 1 до 3 S:=S+i*(i+1)*a a:=a+2 кц |
д) нц для i от 1 до 3 S:=0 нц для j от 2 до 3 S:=S+i+j кц
|
||
в) S:=1; a:=1 нц для i от 1 до 3 S:=S+i нц для j oт 2 до 3 S:=S+j кц кц |
е) нц для i от 1 до 2 S:=0 нц для j oт 2 до 3 нц для k oт 1 до 2 S:=S+i+j+k кц кц кц |
[ Ответ ]
7.14. Определите значение переменной S после выполнения операторов:
а) i:=0; S:=0 нц пока i<3 i:=i+1; S:=S+i*i кц |
г) S:=0; N:=125 нц пока N>0 S:=S+mod(N,10) | S сумма цифр N:=div(N,10) | числа N кц |
Решение Условие i < 3 i S
0 0 0 < 3? да 1 0+12=1 1 < 3? да 2 1+22=5 2 < 3? да 3 5+32=14 3 < 3? нет(кц)
Ответ: S=14 |
Решение Условие N > 0 S N
0 125 125 > 0? да 0+5=5 12 12 > 0? да 5+2=7 1 1 > 0? да 7+1=8 0 0 > 0? нет (кц)
Ответ: S=8 |
б) S:=0; i:=1 нц пока i>1 S:=S+1/i i:=i-1
|
д) а:=1; b:=1; S:=0; нц пока a<=5 a:=a+b; b:=b+a; S:=S+a+b кц |
в) S:=0; i:=1; j:=5 нц пока i<j S:=S+i*j i:=i+1 j:=j-1 кц |
е) a:=1; b:=1 нц пока a+b<10 a:=a+1 b:=b+a кц
|
[ Ответ ]
7.15. Составте алгоритмы решения задач линейной структуры (условия этих задач заимствены из учебного пособия В.М. Заварыкина, В.Г. Житомирского и М.П. Лапчика "Основы информатики и вычислительной техники", 1989):
а) в треугольнике известны три стороны a, b и c; найти (в градусах) углы этого треугольника, используя формулы:
С=180o-(А+В). |
Пояснение. Обратите внимание на то, что стандартные тригонометрические функции arccos и arcsin возвращают вычисленное значение в радианной мере.
Решение:
алг Углы треугольника(арг вещ a,b,c, рез вещ UgolA,UgolB,UgolC)
нач вещ RadGr,UgolARad
| RadGr коэф. перевода угла из радианной меры в градусную
| UgolARad угол A (в радианах)
RadGr:=180/3.14
UgolARad:=ArcCos((b*b+c*c-a*a)/(2*b*c))
UgolA:=UgolARad*RadGr
UgolB:=ArcSin(b*sin(UgolARad)/a)*RadGr
UgolC:=180-(UgolA+UgolB)
кон
б) в треугольнике известны две стороны a, b и угол C (в радианах) между ними; найти сторону c, углы A и B (в радианнах) и площадь треугольника, используя формулы:
с2 = a2 + b2 - 2ab cos C.
Пояснение. Сначала нужно найти сторону c, а затем остальные требуемые значения;
в) в треугольнике известны три стороны a, b и c; найти радиус описанной окружности и угол A (в градусах), используя формулы:
где
г) в правильной треугольной пирамиде известны сторона основания a и угол A (в градусах) наклона боковой грани к плоскости основания; найти объем и площадь полной поверхности пирамиды, используя формулы:
V=Socн· H/2; |
||
где |
д) в усеченном конусе известны радиус оснований R и r и угол A (в радианах) наклона образующей к поверхности большого основания; найти объем и площадь боковой поверхности конуса, используя формулы:
где |
e) в правильной четырехугольной пирамиде сторона основания равна a, а боковое ребро наклонено к плоскости основания под углом A; найти объем и площадь полной поверхности пирамиды и площадь сечения, проходящего через вершину пирамиды и диагональ основания d; использовать формулы:
[ Ответ ]
7.16. Составте алгоритм решения задач развлетвляющейся структуры:
а) определить, является ли треугольник с заданными сторонами a, b, c равнобедренным;
Решение:
алг Треугольник(арг вещ a,b,c, рез лог Otvet)
дано | a>0, b>0, c>0, a+b>c, a+c>b, b+c>a
надо | Otvet = да, если треугольник равнобедренный
| Otvet = нет, если треугольник не равноведренный
нач
если (a=b) или (a=c) или (b=c)
то Otvet:= да
иначе Otvet:= нет
все
кон
б) определить количество положительных чисел среди заданных чисел a, b и c;
в) меньшее из двух заданных неравных чисел увеличить вдвое, а большее оставить без изменения;
г) числа a и b катеты одного прямоугольного треугольника, а c и d другого; определить, являются ли эти треугольники подобными;
д) данны три точки на плоскости; определить, какая из них ближе к началу координат;
е) определить, принадлежит ли заданная точка (x,y) плоской фигуре, являющейся кольцом с центром в начале координат, с внутренним радиусом r1 и внешним радиусом r2;
ж) упорядочить по возрастанию последовательность трех чисел a, b и c.
[ Ответ ]
***********************************
Решение задач с помощью компьютера включает в себя следующие основные этапы, часть из которых осуществляется без участия компьютера.
Математическая модель это система математических соотношений формул, уравнений, неравенств и т.д., отражающих существенные свойства объекта или явления. |
Всякое явление природы бесконечно в своей сложности. Проиллюстрируем это с помощью примера, взятого из книги В.Н. Тростникова "Человек и информация" (Издательство "Наука", 1970).
... Обыватель формулирует математику задачу следующим образом: "Сколько времени будет падать камень с высоты 200 метров?" Математик начнет создавать свой вариант задачи приблизительно так: "Будем считать, что камень падает в пустоте и что ускорение силы тяжести 9,8 метра в секунду за секунду. Тогда ..."
Позвольте, может сказать "заказчик", меня не устраивает такое упрощение. Я хочу знать точно, сколько времени будет падать камень в реальных условиях, а не в несуществующей пустоте.
Хорошо, согласится математик. Будем считать, что камень имеет сферическую форму и диаметр... Какого примерно он диаметра?
Около пяти сантиметров. Но он вовсе не сферический, а продолговатый.
Тогда будем считать, что он имеет форму эллипсоида с полуосями четыре, три и три сантиметра и что он падает так, что большая полуось все время остается вертикальной. Давление воздуха примем равным 760 мм ртутного столба, отсюда найдем плотность воздуха...
Если тот, кто поставил задачу на "человеческом" языке не будет дальше вмешиваться в ход мысли математика, то последний через некоторое время даст численный ответ. Но "потребитель" может возражать по-прежнему: камень на самом деле вовсе не эллипсоидальный, давление воздуха в том месте и в тот момент не было равно 760 мм ртутного столба и т.д. Что же ответит ему математик?
Он ответит, что точное решение реальной задачи вообще невозможно. Мало того, что форму камня, которая влияет на сопротивление воздуха, невозможно описать никаким математическим уравнением; его вращение в полете также неподвластно математике из-за своей сложности. Далее, воздух не является однородным, так как в результате действия случайных факторов в нем возникают флуктуации колебания плотности. Если пойти ещё глубже, нужно учесть, что по закону всемирного тяготения каждое тело действует на каждое другое тело. Отсюда следует, что даже маятник настенных часов изменяет своим движением траекторию камня.
Короче говоря, если мы всерьез захотим точно исследовать поведение какого-либо предмета, то нам предварительно придется узнать местонахождение и скорость всех остальных предметов Вселенной. А это, разумеется. невозможно.
Чтобы описать явление, необходимо выявить самые существенные его свойства, закономерности, внутренние связи, роль отдельных характеристик явления. Выделив наиболее важные факторы, можно пренебречь менее существенными. |
Наиболее эффективно математическую модель можно реализовать на компьютере в виде алгоритмической модели так называемого "вычислительного эксперимента" (см. [1], параграф 26).
Конечно, результаты вычислительного эксперимента могут оказаться и не соответствующими действительности, если в модели не будут учтены какие-то важные стороны действительности.
Итак, создавая математическую модель для решения задачи, нужно:
При построении математических моделей далеко не всегда удается найти формулы, явно выражающие искомые величины через данные. В таких случаях используются математические методы, позволяющие дать ответы той или иной степени точности.
Существует не только математическое моделирование какого-либо явления, но и визуально-натурное моделирование, которое обеспечивается за счет отображения этих явлений средствами машинной графики, т.е. перед исследователем демонстрируется своеобразный "компьютерный мультфильм", снимаемый в реальном масштабе времени. Наглядность здесь очень высока.
Процесс разработки программы можно выразить следующей формулой:
Наличие ошибок в только что разработанной программе это вполне нормальное закономерное явление. Практически невозможно составить реальную (достаточно сложную) программу без ошибок.
Нельзя делать вывод, что программа правильна, лишь на том основании, что она не отвергнута машиной и выдала результаты. |
Ведь все, что достигнуто в данном случае, это получение каких-то результатов, не обязательно правильных. В программе при этом может оставаться большое количество логических ошибок.
Текст программы можно проконтролировать за столом с помощью просмотра, проверки и прокрутки.
Отладка программы это процесс поиска и устранения ошибок в программе, производимый по результатам её прогона на компьютере. |
Тестирование это испытание, проверка правильности работы программы в целом, либо её составных частей. |
Отладка и тестирование (англ. test испытание) это два четко различимых и непохожих друг на друга этапа:
Тестирование устанавливает факт наличия ошибок, а отладка выясняет ее причину. |
Английский термин debugging ("отладка") буквально означает "вылавливание жучков". Термин появился в 1945 г., когда один из первых компьютеров "Марк-1" прекратил работу из-за того, что в его электрические цепи попал мотылек и заблокировал своими останками одно из тысяч реле машины.
В современных программных системах (Turbo Basic, Turbo Pascal, Turbo C и др.) отладка осуществляется часто с использованием специальных программных средств, называемых отладчиками. Эти средства позволяют исследовать внутреннее поведение программы.
Программа-отладчик обычно обеспечивает следующие возможности:
При отладке программ важно помнить следующее:
Как бы ни была тщательно отлажена программа, решающим этапом, устанавливающим ее пригодность для работы, является контроль программы по результатам ее выполнения на системе тестов.
Программу условно можно считать правильной, если её запуск для выбранной системы тестовых исходных данных во всех случаях дает правильные результаты. |
Но, как справедливо указывал известный теоретик программирования Э. Дейкстра, тестирование может показать лишь наличие ошибок, но не их отсутствие. Нередки случаи, когда новые входные данные вызывают "отказ" или получение неверных результатов работы программы, которая считалась полностью отлаженной.
Для реализации метода тестов должны быть изготовлены или заранее известны эталонные результаты.
Вычислять эталонные результаты нужно обязательно до, а не после получения машинных результатов. |
В противном случае имеется опасность невольной подгонки вычисляемых значений под желаемые, полученные ранее на машине.
Тестовые данные должны обеспечить проверку всех возможных условий возникновения ошибок:
Пример. Система тестов для задачи нахождения корней квадратного уравнения ax2 + bx + c = 0 :
Номер теста |
Проверяемый случай |
Коэффициенты |
Результаты |
||
a |
b |
c |
|||
1 |
d > 0 |
1 |
1 |
-2 |
x1 = 1, x2 = -2 |
2 |
d = 0 |
1 |
2 |
1 |
Корни равны: x1 = -1, x2 = -1 |
3 |
d < 0 |
2 |
1 |
2 |
Действительных корней нет |
4 |
a = 0, b = 0, c = 0 |
0 |
0 |
0 |
Все коэффициенты равны нулю. x любое число |
5 |
a = 0, b = 0, c № 0 |
0 |
0 |
2 |
Неправильное уравнение |
6 |
a = 0, b № 0 |
0 |
2 |
1 |
Линейное уравнение; один корень: x = -0.5 |
7 |
a № 0, b № 0, c = 0 |
2 |
1 |
0 |
x1 = 0, x2 = -0.5 |
Процесс тестирования можно разделить на три этапа.
Проверка в нормальных условиях.
Предполагает тестирование на основе данных, которые характерны для реальных условий функционирования программы.
Проверка в экстремальных условиях.
Тестовые данные включают граничные значения области изменения входных переменных, которые должны восприниматься программой как правильные данные. Типичными примерами таких значений являются очень маленькие или очень большие числа и отсутствие данных.
Еще один тип экстрем аьных условий это граничные объемы данных, когда массивы состоят из слишком малого или слишком большого числа элементов.
Проверка в исключительных ситуациях.
Проводится с использованием данных, значения которых лежат за пределами допустимой области изменений.
Известно, что все программы разрабатываются в расчете на обработку какого-то ограниченного набора данных. Поэтому важно получить ответ на следующие вопросы:
? Что произойдет, если программе, не расчитанной на обработку отрицательных и нулевых значений переменных, в результате какой-либо ошибки придется иметь дело как раз с такими данными?
? Как будет вести себя программа, работающая с массивами, если количество их элементов певысит величину, указанную в объявлении массива?
? Что произойдет, если числа будут слишком малыми или слишком большими?
Наихудшая ситуация складывается тогда, когда программа воспринимает неверные данные как правильные и выдает неверный, но правдоподобный результат.
Программа должна сама отвергать любые данные, которые она не в состоянии обрабатывать правильно. |
Ошибки могут быть допущены на всех этапах решения задачи от ее постановки до оформления. Разновидности ошибок и соответствующие примеры приведены в таблице:
Вид ошибки |
Пример |
Неправильная постановка задачи |
Правильное решение неверно сформулированной задачи |
Неверный алгоритм |
Выбор алгоритма, приводящего к неточному или эффективному решению задачи |
Ошибка анализа |
Неполный учет ситуаций, которые могут возникнуть; логические ошибки |
Семантические ошибки |
Непонимание порядка выполнения оператора |
Синтаксические ошибки |
Нарушение правил, определяемых языком программирования |
Ошибки при выполнении операций |
Слишком большое число, деление на ноль, извлечение квадратного корня из отрицательного числа и т. п. |
Ошибки в данных |
Неудачное определение возможного диапазона изменения данных |
Опечатки |
Перепутаны близкие по написанию символы, например, цифра 1 и буквы I, l |
Ошибки ввода-вывода |
Неверное считывание входных данных, неверное задание форматов данных |
Обычно синтаксические ошибки выявляются на этапе трансляции. Многие же другие ошибки транслятору выявить невозможно, так как транслятору неизвестны замыслы программиста.
Отсутствие сообщений машины о синтаксических ошибках является необходимым , но не достаточным условием, чтобы считать программу правильной. |
Примеры синтаксических ошибок:
Существует множество ошибок, которые транслятор выявить не в состоянии, если используемые в программе операторы сформированы верно.
Примеры таких ошибок.
Логические ошибки:
Ошибки в циклах:
Ошибки ввода-вывода; ошибки при работе с данными:
Ошибки в использовании переменных:
Ошибки при работе с массивами:
Ошибки арифметических операций:
Эти ошибки обнаруживаются с помощью тестирования.
Сопровождение программ это работы, связанные с обслуживанием программ в процессе их эксплуатации. |
Многократное использование разработанной программы для решения различных задач заданного класса требует проведения дополнительных работ, связанных с доработками программы для решения конкретных задач, проведения дополнительных тестовых просчетов и т.п.
Программа, предназначеная для длительной эксплуатации, должна иметь соответствующую документацию и инструкцию по её использованию.
8.1. Какие основные этапы включает в себя решение задач на компьютере?
8.2. Какие этапы компьютерного решения задач осуществляются без участия компьютера?
8.3. Что называют математической моделью объекта или явления?
8.4. Почему невозможно точное исследование поведения объектов или явлений?
8.5. Какие способы моделирования осуществляются с помощью компьютера?
8.6. Из каких последовательных действий состоит процесс разработки программы?
8.7. Доказывает ли получение правдоподобного результата правильность программы?
8.8. Какие ошибки могут остаться невыявленными, если не провести проверку (просмотр, прокрутку) программы?
8.9. Чем тестирование программы отличается от её отладки?
8.10. Каким образом программа-отладчик помогает исследовать поведение программы в процессе её выполнения?
8.11. Как следует планировать процесс отладки программы?
8.12. Можно ли с помощью тестирования доказать правильность программы?
8.13. На какой стадии работы над программой вычисляются эталонные результаты тестов?
8.14. Назовите основные этапы процесса тестирования.
8.15. В чём заключается отличие синта ксических ошибок от семантических?
8.16. О чём свидетельствует отсутствие сообщений машины о синтаксических ошибках?
8.17. Какие разновидности ошибок транслятор не в состоянии обнаружить?
8.18. Для чего программам требуется сопровождение?
Составьте системы тестов для решения следующих задач:
8.1. Найти наибольший общий делитель двух заданных целых чисел.
8.2. Найти наименьшее общее кратное двух заданных целых чисел.
8.3. Определить, является ли заданное число нечетным двузначным числом.
8.4. Заданы площади квадрата и круга. Определить, поместится ли квадрат в круге.
8.5. Решить биквадратное уравнение.
8.6. Найти среднее арифметическое положительных элементов заданного одномерного массива.
8.7. Элементы заданного одномерного массива разделить на его первый элемент.
8.8. Определить, лежит ли заданная точка на одной из сторон треугольника, заданного координатами своих вершин.
8.9. Определить, имеют ли общие точки две плоские фигуры треугольник с заданными координатами его вершин и круг заданного радиуса c центром в начале координат.
8.10. Задано целое А > 1. Найти наименьшее целое неотрицательное k, при котором 2k > А.
8.11. Дана последовательность целых чисел. Определить, со скольких чётных чисел она начинается.
8.12. В заданном двумерном массиве найти количество строк, не содержащих нули.
8.13. Определить, сколько строк заданного двумерного массива содержат элементы из заданного диапазона.
8.14. Преобразовать число, заданное в римской системе счисления, в число десятичной системы.
***********************************
В последнее время компьютеры «проникли» в жилища людей и постепенно становятся предметами первой необходимости. Есть два основных направления использования компьютеров дома.
Системы автоматизированного проектирования (САПР) предназначены для выполнения проектных работ с применением математических методов и компьютерной техники. |
Системы САПР широко используются в архитектуре, электронике, энергетике, механике и др. В процессе автоматизированного проектирования в качестве входной информации используются технические знания специалистов, которые вводят проектные требования, уточняют результаты, проверяют полученную конструкцию, изменяют ее и т.д. Кроме того, в САПР накапливается информация, поступающая из библиотек стандартов (данные о типовых элементах конструкций, их размерах, стоимости и др.). В процессе проектирования разработчик вызывает определенные программы и выполняет их. Из САПР информация выдается в виде готовых комплектов законченной технической и проектной документации. |
Автоматизированные системы научных исследований (АСНИ) предназначены для автоматизации научных экспериментов, а также для осуществления моделирования исследуемых объектов, явлений и процессов, изучение которых традиционными средствами затруднено или невозможно. |
В настоящее время научные исследования во многих областях знаний проводят большие коллективы ученых, инженеров и конструкторов с помощью весьма сложного и дорогого оборудования.
Большие затраты ресурсов для проведения исследований обусловили необходимость повышения эффективности всей работы.
Эффективность научных исследований в значительной степени связана с уровнем использования компьютерной техники.
Компьютеры в АСНИ используются в информационно-поисковых и экспертных системах, а также решают следующие задачи:
В результате применения АСНИ возникают следующие положительные моменты:
|
Каждая из систем АСНИ и САПР, конечно, имеет свою специфику и отличается поставленными целями и методами их достижения. Однако очень часто между обоими типами систем обнаруживается тесная связь, и их роднит не только то, что они реализуются на базе компьютерной техники.
Например, в процессе проектирования может потребоваться выполнение того или иного исследования, и, наоборот, в ходе научного исследования может возникнуть потребность и в конструировании нового прибора и в проектировании научного эксперимента.
Такая взаимосвязь приводит к тому, что на самом деле «чистых» АСНИ и САПР не бывает: в каждой из них можно найти общие элементы. С повышением их интеллектуальности они сближаются. В конечном счете и те и другие должны представлять собой экспертную систему, ориентированную на решение задач конкретной области.
База знаний (knowledge base) - совокупность знаний, относящихся к некоторой предметной области и формально представленных таким образом, чтобы на их основе можно было осуществлять рассуждения. |
Базы знаний чаще всего используются в контексте экспертных систем, где с их помощью представляются навыки и опыт экспертов, занятых практической деятельностью в соответствующей области (например, в медицине или в математике). Обычно база знаний представляет собой совокупность правил вывода.
Экспертная система это комплекс компьютерного программного обеспечения, помогающий человеку принимать обоснованные решения. Экспертные системы используют информацию, полученную заранее от экспертов - людей, которые в какой-либо области являются лучшими специалистами. |
Экспертные системы должны:
Желательно также, чтобы экспертная система могла:
Экспертные системы могут использоваться в различных областях медицинской диагностике, при поиске неисправностей, разведке полезных ископаемых, выборе архитектуры компьютерной cистемы и т.д.
Основные применения компьютеров в административном управлении следующие.
Электронный офис. Это система автоматизации работы учреждения, основанная на использовании компьютерной техники. В нее обычно входят такие компоненты, как:
Более подробно многие из перечисленных компонент описаны в главе 6 «Программное обеспечение».
Автоматизация документооборота с использованием специальных электронных устройств:
Электронная почта. Это система пересылки сообщений между пользователями вычислительных систем, в которой компьютер берет на себя все функции по хранению и пересылке сообщений. Для осуществления такой пересылки отправитель и получатель не обязательно должны одновременно находиться у дисплеев и не обязательно должны быть подключены к одному компьютеру.
Отправитель сообщения прежде всего запускает программу отправки почты и создает файл сообщения. Затем это сообщение передается в систему пересылки сообщений, которая отвечает за его доставку адресатам. Спустя некоторое время сообщение доставляется адресату и помещается в его «почтовый ящик», размещенный на магнитном диске. Затем получатель запускает программу, которая извлекает полученные сообщения, заносит их в архив и т.п.
Система контроля исполнения приказов и распоряжений.
Система телеконференций. Это основанная на использовании компьютерной техники система, позволяющая пользователям, несмотря на их взаимную удаленность в пространстве, а иногда, и во времени, участвовать в совместных мероприятиях, таких, как организация и управление сложными проектами.
Пользователи обеспечиваются терминалами (обычно это дисплеи и клавиатуры ), подсоединенными к компьютеру, которые позволяют им связываться с другими членами группы. Для передачи информации между участниками совещания используются линии связи.
Работа системы регулируется координатором, в функции которого входит организация работы участников совещания, обеспечение их присутствия на совещании и передача сообщаемой ими информации другим участникам совещания.
В некоторых системах телеконференцсвязи участники имеют возможность «видеть» друг друга, что обеспечивается подсоединенными к системам телевизионными камерами и дисплеями.
Процесс подготовки квалифицированных специалистов длителен и сложен. Обучение в средней школе и затем в вузе занимает почти треть продолжительности жизни человека. К тому же в современном информационном обществе знания очень быстро стареют. Чтобы быть способным выполнять ту или иную профессиональную деятельность, специалисту необходимо непрерывно пополнять своё образование.
В информационном обществе знать "КАК" важнее чем знать "ЧТО". |
Поэтому в наше время основная задача среднего и высшего этапов образования состоит не в том, чтобы сообщить как можно больший объем знаний, а в том, чтобы научить эти знания добывать самостоятельно и творчески применять для получения нового знания. Реально это возможно лишь с введением в образовательный процесс средств новых информационных технологий (СНИТ), ориентированных на реализацию целей обучения и воспитания.
Средства новых информационных технологий это программно-аппаратные средства и устройства, функционирующие на базе ком-пьютерной техники, а также современные средства и системы информационного обмена, обеспечивающие операции по сбору, созданию, накоплению, хранению, обработке и передачи информации. |
Рассмотрим основные перспективные направления использования СНИТ в образовании [52, 53].
Автоматизированные обучающие системы (АОС) комплексы программно-технических и учебно-методических средств, обеспечивающих активную учебную деятельность. АОС обеспечивают не только обучение конкретным знаниям, но и проверку ответов учащихся, возможность подсказки, занимательность изучаемого материала и др.
АОС представляют собой сложные человеко-машинные системы, в которых объединяется в одно целое ряд дисциплин: дидактика (научно обосновываются цели, содержание, закономерности и принципы обучения); психология (учитываются особенности характера и душевный склад обучаемого); моделирование, машинная графика и др.
Основное средство взаимодействия обучаемого с АОС диалог. Диалогом с обучающей системой может управлять как сам обучаемый, так и система. В первом случае обучаемый сам определяет режим своей работы с АОС, выбирая способ изучения материала, который соответствует его индивидуальным способностям. Во втором случае методику и способ изучения материала выбирает система, предъявляя обучаемому в соответствии со сценарием кадры учебного материала и вопросы к ним. Свои ответы обучаемый вводит в систему, которая истолковывает для себя их смысл и выдает сообщение о характере ответа. В зависимости от степени правильности ответа, либо от вопросов обучаемого система организует запуск тех или иных путей сценария обучения, выбирая стратегию обучения и приспосабливаясь к уровню знаний обучаемого.
Экспертные обучающие системы (ЭОС). Реализуют обучающие функции и содержат знания из определенной достаточно узкой предметной области. ЭОС располагают возможностями пояснения стратегии и тактики решения задачи изучаемой предметной области и обеспечивают контроль уровня знаний, умений и навыков с диагностикой ошибок по результатам обучения.
Учебные базы данных (УБД) и учебные базы знаний (УБЗ), ориентированные на некоторую предметную область. УБД позволяют формировать наборы данных для заданной учебной задачи и осуществлять выбор, сортировку, анализ и обработку содержащейся в этих наборах информации. В УБЗ, как правило, содержатся описание основных понятий предметной области, стратегия и тактика решения задач; комплекс предлагаемых упражнений, примеров и задач предметной области, а также перечень возможных ошибок обучаемого и информация для их исправления; база данных, содержащая перечень методических приемов и организационных форм обучения.
Системы Мультимедиа. Позволяют реализовать интенсивные методы и формы обучения, повысить мотивацию обучения за счет применения современных средств обработки аудиовизуальной информации, повысить уровень эмоционального восприятия информации, сформировать умения реализовывать разнообразные формы самостоятельной деятельности по обработке информации.
Системы Мультимедиа широко используются с целью изучения процессов различной природы на основе их моделирования. Здесь можно сделать наглядной невидимую обычным глазом жизнь элементарных частиц микромира при изучении физики, образно и понятно рассказать об абстрактных и n-мерных мирах, доходчиво объяснить, как работает тот или иной алгоритм и т.п. Возможность в цвете и со звуковым сопровождением промоделировать реальный процесс поднимает обучение на качественно новую ступень.
Кадры учебного фильма "Топология и механика" изображают
гиперсферу, аналог обычной сферы в четырехмерном
пространстве. Создано с помощью компьютера.
Системы «Виртуальная реальность». Применяются при решении конструктивно-графических, художественных и других задач, где необходимо развитие умения создавать мысленную пространственную конструкцию некоторого объекта по его графическому представлению; при изучении стереометрии и черчения; в компьютеризированных тренажерах технологических процессов, ядерных установок, авиационного, морского и сухопутного транспорта, где без подобных устройств принципиально невозможно отработать навыки взаимодействия человека с современными сверхсложными и опасными механизмами и явлениями.
Образовательные компьютерные телекоммуникационные сети. Позволяют обеспечить дистанционное обучение (ДО) обучение на расстоянии, когда преподаватель и обучаемый разделены пространственно и (или) во времени, а учебный процесс осуществляется с помощью телекоммуникаций, главным образом, на основе средств сети Интернет. Многие люди при этом получают возможность повышать образование на дому (например, взрослые люди, обремененные деловыми и семейными заботами, молодежь, проживающая в сельской местности или небольших городах). Человек в любой период своей жизни обретает возможность дистанционно получить новую профессию, повысить свою квалификацию и расширить кругозор, причем практически в любом научном или учебном центре мира.
В образовательной практике находят применение все основные виды компьютерных телекоммуникаций: электронная почта, электронные доски объявлений, телеконференции и другие возможности Интернета. ДО предусматривает и автономное использование курсов, записанных на видеодиски, компакт-диски и т.д.
Компьютерные телекоммуникации обеспечивают:
Совместная работа стимулирует учащихся на ознакомление с разными точками зрения на изучаемую проблему, на поиск дополнительной информации, на оценку получаемых собственных результатов.
Основных применений два:
В гибких автоматизированных производствах компьютеры (или микропроцессоры) решают следующие задачи:
Применение компьютеров в управлении технологическими процессами оправдано тогда, когда существует потребность в частых изменениях реализуемых функций. Пример гибких автоматизированных производств заводы-роботы в Японии.
Одной из новых областей является создание на основе персональных компьютеров контрольно-измерительной аппаратуры, с помощью которой можно проверять изделия прямо на производственной линии.
В развитых странах налажен выпуск программного обеспечения и специальных сменных плат, позволяющих превращать компьютер в высококачественную измерительную и испытательную систему.
Компьютеры, оснащенные подобным образом, могут использоваться в качестве запоминающих цифровых осциллографов, устройств сбора данных, многоцелевых измерительных приборов.
Применение компьютеров в качестве контрольно-измерительных приборов более эффективно, чем выпуск в ограниченных количествах специализированных приборов с вычислительными блоками.
Автоматизированное рабочее место (АРМ, рабочая станция) место оператора, которое оборудовано всеми средствами, необходимыми для выполнения определенных функций. |
В системах обработки данных и учреждениях обычно АРМ это дисплей с клавиатурой, но может использоваться также и принтер, внешние запоминающее устройство и др.
Врачи используют компьютеры для многих важных применений. Назовем некоторые из них.
Компьютерная аппаратура широко используется при постановке диагноза, проведении обследований и профилактических осмотров. Примеры компьютерных устройств и методов лечения и диагностики:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Компьютерные сети используются для пересылки сообщений о донорских органах, в которых нуждаются больные, ожидающие операции трансплантации.
Банки медицинских данных позволяют медикам быть в курсе последних научных и практических достижений.
Компьютеры позволяют установить, как влияет загрязненность воздуха на заболеваемость населения данного района. Кроме того, с их помощью можно изучать влияние ударов на различные части тела, в частности, последствия удара при автомобильной катастрофе для черепа и позвоночника человека.
Рис 9.1. Организация работы в компьютеризированном
отделении лечебного учреждения
Компьютерная техника используется для обучения медицинских работников практическим навыкам. На этот раз компьютер выступает в роли больного, которому требуется немедленная помощь. На основании симптомов, выданных компьютером, обучающийся должен определить курс лечения. Если он ошибся, компьютер сразу показывает это.
Компьютеры используются для создания карт, показывающих скорость распространения эпидемий.
Компьютеры хранят в своей памяти истории болезней пациентов, что освобождает врачей от бумажной работы, на которую уходит много времени, и позволяет больше времени уделять самим больным.
На риcунках показано, как организуется работа в полностью компьютеризированном отделении лечебного учреждения. Применение компьютеров переводит медицину на иной, более высокий качественный уровень и способствует дальнейшему повышению уровня и качества жизни.
В организации компьютерного обслуживания торговых предприятий большое распространение получил так называемый штриховой код (бар-код). Он представляет собой серию широких и узких линий, в которых зашифрован номер торгового изделия.
Бар-код
Этот номер записан на этикетке изделия дважды: в форме двух пятизначных чисел и в виде широких и узких линий. Первые пять цифр указывают фирму-поставщика, а другие пять номер изделия в номенклатуре выпускаемых данной фирмой товаров.
Для печати штриховых кодов используются специальные приставки на обычных принтерах. Полученные коды считываются с помощью сканеров, преобразуются в электрические импульсы, переводятся в двоичный код и передаются в память компьютера.
Используя штриховой код, компьютер печатает на выдаваемом покупателю чеке название товара и его цену.
Информация о каждом имеющемся в магазине или на складе товаре занесена в базу данных. По запросу компьютер анализирует:
Одновременно с подачей сведений о проданном товаре на дисплей кассового аппарата компьютер производит соответствующую коррекцию (уточнение) товарной ведомости.
Обычно программное обеспечение устроено так, что сводная информация о наличии товаров выдается управляющему магазина к концу рабочего дня. Вместе с тем управляющий имеет возможность обновлять данные об изменении цен и поступлении новых партий товаров.
В перспективе торговля, по-видимому, превратится в компьютеризованную продажу товаров по заказам.
То же самое программное обеспечение, которое применяется для организации учета в торговле, можно использовать и для других целей, например для контроля наличия комплектующих изделий на заводской сборочной линии, учета сплавляемых по реке бревен и др.
Одной из важнейших составляющих информатизации становится переход денежно-кредитной и финансовой сферы к электронным деньгам.
Основные направления использования электронных денег следующие:
Торговля без наличных. Оплата производится с использованием кредитных карточек. Имея вместо наличных денег кредитную карточку, покупатель при любой покупке расплачивается не наличными, а автоматически снимает со своего счета в банке нужную сумму денег и пересылает ее на счет магазина.
Система торговли без наличных POS (англ. Points of Sale System - система кассовых автоматов) выполняет следующие функции:
POS наиболее массовая и показательная ветвь системы электронных денег. Она способна также обнаруживать малейшие хищения наличных денег и товаров.
Сведения на кредитную карточку наносятся методом магнитной записи. В каждую кредитную карточку вставлена магнитная карта носитель информации.
На магнитную карту заранее записываются следующие данные:
Считается, что сами по себе кредитные карточки экономят 10% расходов на оплату товаров.
Разменные автоматы. Они устанавливаются банками только для своих клиентов, которым предварительно выданы кредитные карточки. Клиент вставляет в автомат кредитную карточку и набирает личный код и сумму, которую он желает иметь наличными. Автомат по банковской сети проверяет правильность кода, снимает указанную сумму со счета клиента и выдает её наличными. Часто несколько банков объединяются и создают общую сеть разменных автоматов.
Банковские сделки на дому. За небольшую месячную плату при наличии дома персонального компьютера и модема вкладчик может связываться через телефонную сеть с компьютеризованными банковскими организациями и получать от них богатый набор услуг.
Встречные зачёты. По всему миру активно внедряются электронные системы потребительского кредита и взаимных расчетов между банками по общему итогу.
Такие системы реализуются в виде автоматических клиринговых (англ. clearing очистка) вычислительных сетей ACH (Automated Clearing House). По сети идут не только банковские документы, но и информация, важная для принятия ответственных финансовых решений.
Оплата устно. Она заключается в оплате счетов по телефону с гарантированным опознаванием кредитора по паролю и голосу.
Другой способ состоит в использовании устройства, способного передавать по телефону факсимильные изображения денежных чеков и счетов (факсимильный от лат. fac simile, точное воспроизведение подписи, документа и т.д. графическими средствами).
Наряду с очевидными и очень большими преимуществами с электронными деньгами связаны и сложные проблемы от финансовых до правовых ("электронные ограбления", перелив электронных денег из одной страны в другую и др.).
Электронные деньги есть неизбежный результат научно-технического прогресса в денежно-кредитной сфере.
Имея компьютер, фермер может легко и быстро рассчитать требуемое для посева количество семян и количество удобрений, спланировать свой бюджет и вести учет домашнего скота. Компьютерные системы могут планировать севооборот, расчитывать график полива сельхозкультур, управлять подачей корма скоту и выполнять много других полезных функций.
На наших глазах происходит технологическая революция в сельском хозяйстве компьютеры и индивидуальные микродатчики позволяют контролировать состояние и режим каждого отдельного животного и растения. Это высвобождает значительные материальные и людские ресурсы, резко улучшает качество жизни человека.
9.1. Расскажите об основных направлениях использования компьютеров в жилищах людей.
9.2. Как вы представляется себе информационное общество?
9.3. Какие функции обеспечения жизнедеятельности жилища возлагаются сегодня на компьютер?
9.4. Какие виды повседневных информационных потребностей людей обеспечивают компьютеры?
9.5. В чем суть процесса информатизации образования?
9.6. Какие задачи решаются с помощью автоматизированных обучающих систем?
9.7. Что такое дистанционное обучение?
9.8. Назовите основные перспективные направления использования СНИТ в образовании.
9.9. Расскажите об областях применения систем виртуальной реальности.
9.10. Назовите основные компоненты компьютерных офисных технологий.
9.11. Какие преимущества имеет электронная почта по сравнению с обычной почтой?
9.12. Назовите функции координатора системы телеконференций.
9.13. Назовите темы телеконференций, в которых вы хотели бы участвовать.
9.14. Каким вам представляется информационное наполнение баз данных вашего учебного заведения?
9.15. Какие медицинские технологии и способы лечения стали возможны с развитием компьютерной техники?
9.16. Перечислите основные компоненты автоматизированного офиса.
9.17. Что такое POS-система? Какие виды услуг предоставляет система электронных денег?
9.18. Какие функции выполняет система торговли без наличных?
9.19. Как устроена кредитная карточка?
9.20. Какие функции реализуют автоматические клиринговые компьютерные сети?
9.21. Назовите преимущества и недостатки системы компьютеризированных банковских расчетов.
9.22. Какие примеры эффективного применения компьютеров в сельском хозяйстве вы можете назвать?
***********************************