Справочник от Автор24
Поделись лекцией за скидку на Автор24

Основные понятия информатики

  • 👀 575 просмотров
  • 📌 542 загрузки
  • 🏢️ ВИБ
Выбери формат для чтения
Загружаем конспект в формате pdf
Это займет всего пару минут! А пока ты можешь прочитать работу в формате Word 👇
Конспект лекции по дисциплине «Основные понятия информатики» pdf
ЧОУ ВО «Волгоградский институт бизнеса» Кафедра информатики и математики Дисциплина «Информатика и программирование» Основные понятия информатики Термин "информатика" (франц. informatique) происходит от французских слов information (информация) и automatique (автоматика) и дословно означает "информационная автоматика". Широко распространѐн также англоязычный вариант этого термина — "Сomputer science", что означает буквально "компьютерная наука". Инфоpматика — это основанная на использовании компьютерной техники дисциплина, изучающая структуру и общие свойства информации, а также закономерности и методы еѐ создания, хранения, поиска, преобразования, передачи и применения в различных сферах человеческой деятельности. В 1978 году международный научный конгресс официально закрепил за понятием "информатика" области, связанные с разработкой, созданием, использованием и материальнотехническим обслуживанием систем обработки информации, включая компьютеры и их программное обеспечение, а также организационные, коммерческие, административные и социально-политические аспекты компьютеризации — массового внедрения компьютерной техники во все области жизни людей. Таким образом, информатика базируется на компьютерной технике и немыслима без нее. Инфоpматика — комплексная научная дисциплина с широчайшим диапазоном применения. Еѐ приоритетные направления: pазpаботка вычислительных систем и пpогpаммного обеспечения; теоpия инфоpмации, изучающая процессы, связанные с передачей, приѐмом, преобразованием и хранением информации; математическое моделирование, методы вычислительной и прикладной математики и их применение к фундаментальным и прикладным исследованиям в различных областях знаний; методы искусственного интеллекта, моделирующие методы логического и аналитического мышления в интеллектуальной деятельности человека (логический вывод, обучение, понимание речи, визуальное восприятие, игры и др.); системный анализ, изучающий методологические средства, используемые для подготовки и обоснования решений по сложным проблемам различного характера; биоинформатика, изучающая информационные процессы в биологических системах; социальная информатика, изучающая процессы информатизации общества; методы машинной графики, анимации, средства мультимедиа; телекоммуникационные системы и сети, в том числе, глобальные компьютерные сети, объединяющие всѐ человечество в единое информационное сообщество; разнообразные пpиложения, охватывающие производство, науку, образование, медицину, торговлю, сельское хозяйство и все другие виды хозяйственной и общественной деятельности. Выделяют три неразрывно и существенно связанные части информатики — технические средства, программные и алгоритмические. Технические средства, или аппаратура компьютеров, в английском языке обозначаются словом Hardware, которое буквально переводится как "твердые изделия". Для обозначения программных средств, под которыми понимается совокупность всех программ, используемых компьютерами, и область деятельности по их созданию и применению, используется слово Software (буквально — "мягкие изделия"), которое подчеркивает равнозначность самой машины и программного обеспечения, а также способность программного обеспечения модифицироваться, приспосабливаться и развиваться. Программированию задачи всегда предшествует разработка способа ее решения в виде последовательности действий, ведущих от исходных данных к искомому результату, иными словами, разработка алгоритма решения задачи. Для обозначения части информатики, связанной с разработкой алгоритмов и изучением методов и приемов их построения, применяют термин Brainware (англ. brain — интеллект). Роль информатики в развитии общества чрезвычайно велика. С ней связано начало революции в области накопления, передачи и обработки информации. Эта революция, следующая за революциями в овладении веществом и энергией, затрагивает и коренным образом преобразует не только сферу материального производства, но и интеллектуальную, духовную сферы жизни. Прогрессивное увеличение возможностей компьютерной техники, развитие информационных сетей, создание новых информационных технологий приводят к значительным изменениям во всех сферах общества: в производстве, науке, образовании, медицине и т.д. Термин "информация" происходит от латинского слова "informatio", что означает сведения, разъяснения, изложение. Несмотря на широкое распространение этого термина, понятие информации является одним из самых дискуссионных в науке. В настоящее время наука пытается найти общие свойства и закономерности, присущие многогранному понятию информация, но пока это понятие во многом остается интуитивным и получает различные смысловые наполнения в различных отраслях человеческой деятельности: в обиходе информацией называют любые данные или сведения, которые кого-либо интересуют. Например, сообщение о каких-либо событиях, о чьей-либо деятельности и т.п. "Информировать" в этом смысле означает "сообщить нечто, неизвестное раньше"; в технике под информацией понимают сообщения, передаваемые в форме знаков или сигналов; в кибернетике под информацией понимает ту часть знаний, которая используется для ориентирования, активного действия, управления, т.е. в целях сохранения, совершенствования, развития системы (Н. Винер). Клод Шеннон, американский учѐный, заложивший основы теории информации — науки, изучающей процессы, связанные с передачей, приѐмом, преобразованием и хранением информации, — рассматривает информацию как снятую неопределенность наших знаний о чем-то. Приведем еще несколько определений: Информация — это сведения об объектах и явлениях окружающей среды, их параметрах, свойствах и состоянии, которые уменьшают имеющуюся о них степень неопределенности, неполноты знаний (Н.В. Макарова); Информация — это отрицание энтропии (Леон Бриллюэн); Информация — это мера сложности структур (Моль); Информация — это отраженное разнообразие (Урсул); Информация — это содержание процесса отражения (Тузов); Информация — это вероятность выбора (Яглом). Современное научное представление об информации очень точно сформулировал Норберт Винер, "отец" кибернетики. А именно: Информация — это обозначение содержания, полученного из внешнего мира в процессе нашего приспособления к нему и приспособления к нему наших чувств. Люди обмениваются информацией в форме сообщений. Сообщение — это форма представления информации в виде речи, текстов, жестов, взглядов, изображений, цифровых данных, графиков, таблиц и т.п. Одно и то же информационное сообщение (статья в газете, объявление, письмо, телеграмма, справка, рассказ, чертѐж, радиопередача и т.п.) может содержать разное количество информации для разных людей — в зависимости от их предшествующих знаний, от уровня понимания этого сообщения и интереса к нему. Так, сообщение, составленное на японском языке, не несѐт никакой новой информации человеку, не знающему этого языка, но может быть высокоинформативным для человека, владеющего японским. Никакой новой информации не содержит и сообщение, изложенное на знакомом языке, если его содержание непонятно или уже известно. Информация есть характеристика не сообщения, а соотношения между сообщением и его потребителем. Без наличия потребителя, хотя бы потенциального, говорить об информации бессмысленно. В случаях, когда говорят об автоматизированной работе с информацией посредством каких-либо технических устройств, обычно в первую очередь интересуются не содержанием сообщения, а тем, сколько символов это сообщение содержит. Применительно к компьютерной обработке данных под информацией понимают некоторую последовательность символических обозначений (букв, цифр, закодированных графических образов и звуков и т.п.), несущую смысловую нагрузку и представленную в понятном компьютеру виде. Каждый новый символ в такой последовательности символов увеличивает информационный объѐм сообщения. Информация может существовать в виде: текстов, рисунков, чертежей, фотографий; световых или звуковых сигналов; радиоволн; электрических и нервных импульсов; магнитных записей; жестов и мимики; запахов и вкусовых ощущений; хромосом, посредством которых передаются по наследству признаки и свойства организмов и т.д. Предметы, процессы, явления материального или нематериального свойства, рассматриваемые с точки зрения их информационных свойств, называются информационными объектами. Информация передаѐтся в форме сообщений от некоторого источника информации к еѐ приѐмнику посредством канала связи между ними. Источник посылает передаваемое сообщение, которое кодируется в передаваемый сигнал. Этот сигнал посылается по каналу связи. В результате в приѐмнике появляется принимаемый сигнал, который декодируется и становится принимаемым сообщением. ИСТОЧНИК канал связи ----------- ПРИЁМНИК Примеры: 1. Cообщение, содержащее информацию о прогнозе погоды, передаѐтся приѐмнику (телезрителю) от источника — специалиста-метеоролога посредством канала связи — телевизионной передающей аппаратуры и телевизора. 2. Живое существо своими органами чувств (глаз, ухо, кожа, язык и т.д.) воспринимает информацию из внешнего мира, перерабатывает еѐ в определенную последовательность нервных импульсов, передает импульсы по нервным волокнам, хранит в памяти в виде состояния нейронных структур мозга, воспроизводит в виде звуковых сигналов, движений и т.п., использует в процессе своей жизнедеятельности. Передача информации по каналам связи часто сопровождается воздействием помех, вызывающих искажение и потерю информации. Какое количество информации содержится, к примеру, в тексте романа "Война и мир", во фресках Рафаэля или в генетическом коде человека? Ответа на эти вопросы наука не даѐт и, по всей вероятности, даст не скоро. А возможно ли объективно измерить количество информации? Важнейшим результатом теории информации является следующий вывод: В определенных, весьма широких условиях можно пренебречь качественными особенностями информации, выразить еѐ количество числом, а также сравнить количество информации, содержащейся в различных группах данных. В настоящее время получили распространение подходы к определению понятия "количество информации", основанные на том, что информацию, содержащуюся в сообщении, можно нестрого трактовать в смысле еѐ новизны или, иначе, уменьшения неопределѐнности наших знаний об объекте. Эти подходы используют математические понятия вероятности и логарифма Подходы к определению количества информации. Формулы Хартли и Шеннона. Американский инженер Р. Хартли в 1928 г. процесс получения информации рассматривал как выбор одного сообщения из конечного наперѐд заданного множества из N равновероятных сообщений, а количество информации I, содержащееся в выбранном сообщении, определял как двоичный логарифм N. Формула Хартли: I = log2N Допустим, нужно угадать одно число из набора чисел от единицы до ста. По формуле Хартли можно вычислить, какое количество информации для этого требуется: I = log 2100 6,644. Таким образом, сообщение о верно угаданном числе содержит количество информации, приблизительно равное 6,644 единицы информации. Приведем другие примеры равновероятных сообщений: 1. при бросании монеты: "выпала решка", "выпал орел"; 2. на странице книги: "количество букв чѐтное", "количество букв нечѐтное". Определим теперь, являются ли равновероятными сообщения "первой выйдет из дверей здания женщина" и "первым выйдет из дверей здания мужчина". Однозначно ответить на этот вопрос нельзя. Все зависит от того, о каком именно здании идет речь. Если это, например, станция метро, то вероятность выйти из дверей первым одинакова для мужчины и женщины, а если это военная казарма, то для мужчины эта вероятность значительно выше, чем для женщины. Для задач такого рода американский учѐный Клод Шеннон предложил в 1948 г. другую формулу определения количества информации, учитывающую возможную неодинаковую вероятность сообщений в наборе. Формула Шеннона: I = — ( p1log2 p1 + p2 log2 p2 + . . . + pN log2 pN), где pi — вероятность того, что именно i-е сообщение выделено в наборе из N сообщений. Легко заметить, что если вероятности p1, ..., pN равны, то каждая из них равна 1 / N, и формула Шеннона превращается в формулу Хартли. Помимо двух рассмотренных подходов к определению количества информации, существуют и другие. Важно помнить, что любые теоретические результаты применимы лишь к определѐнному кругу случаев, очерченному первоначальными допущениями. В качестве единицы информации Клод Шеннон предложил принять один бит (англ. bit — binary digit — двоичная цифра). Бит в теории информации — количество информации, необходимое для различения двух равновероятных сообщений (типа "орел"—"решка", "чет"—"нечет" и т.п.). В вычислительной технике битом называют наименьшую "порцию" памяти компьютера, необходимую для хранения одного из двух знаков "0" и "1", используемых для внутримашинного представления данных и команд. Бит — слишком мелкая единица измерения. На практике чаще применяется более крупная единица — байт, равная восьми битам. Именно восемь битов требуется для того, чтобы закодировать любой из 256 символов алфавита клавиатуры компьютера (256=28). Широко используются также ещѐ более крупные производные единицы информации: 1 Килобайт (Кбайт) = 1024 байт = 210 байт, 1 Мегабайт (Мбайт) = 1024 Кбайт = 220 байт, 1 Гигабайт (Гбайт) = 1024 Мбайт = 230 байт. В последнее время в связи с увеличением объѐмов обрабатываемой информации входят в употребление такие производные единицы, как: 1 Терабайт (Тбайт) = 1024 Гбайт = 240 байт, 1 Петабайт (Пбайт) = 1024 Тбайт = 250 байт. За единицу информации можно было бы выбрать количество информации, необходимое для различения, например, десяти равновероятных сообщений. Это будет не двоичная (бит), а десятичная (дит) единица информации. Информацию можно: создавать; формализовать; собирать; передавать; распространять; хранить; воспринимать; преобразовывать; искать; иcпользовать; комбинировать; измерять; запоминать; обрабатывать; разрушать; принимать; делить на части; и др. копировать; упрощать; Все эти процессы, связанные с определенными операциями над информацией, называются информационными процессами. Свойства информации: достоверность; понятность; полнота; доступность; ценность; краткость; своевременность; и др. Информация достоверна, если она отражает истинное положение дел. Недостоверная информация может привести к неправильному пониманию или принятию неправильных решений. Достоверная информация со временем может стать недостоверной, так как она обладает свойством устаревать, то есть перестаѐт отражать истинное положение дел. Информация полна, если еѐ достаточно для понимания и принятия решений. Как неполная, так и избыточная информация сдерживает принятие решений или может повлечь ошибки. Точность информации определяется степенью ее близости к реальному состоянию объекта, процесса, явления и т.п. Ценность информации зависит от того, насколько она важна для решения задачи, а также от того, насколько в дальнейшем она найдѐт применение в каких-либо видах деятельности человека. Только своевременно полученная информация может принести ожидаемую пользу. Одинаково нежелательны как преждевременная подача информации (когда она ещѐ не может быть усвоена), так и еѐ задержка. Если ценная и своевременная информация выражена непонятным образом, она может стать бесполезной. Информация становится понятной, если она выражена языком, на котором говорят те, кому предназначена эта информация. Информация должна преподноситься в доступной (по уровню восприятия) форме. Поэтому одни и те же вопросы по разному излагаются в школьных учебниках и научных изданиях. Информацию по одному и тому же вопросу можно изложить кратко (сжато, без несущественных деталей) или пространно (подробно, многословно). Краткость информации необходима в справочниках, энциклопедиях, учебниках, всевозможных инструкциях. Обработка информации — получение одних информационных объектов из других информационных объектов путем выполнения некоторых алгоритмов [15]. Обработка является одной из основных операций, выполняемых над информацией, и главным средством увеличения объѐма и разнообразия информации. Средства обработки информации — это всевозможные устройства и системы, созданные человечеством, и в первую очередь, компьютер — универсальная машина для обработки информации. Компьютеры обрабатывают информацию путем выполнения некоторых алгоритмов. Живые организмы и растения обрабатывают информацию с помощью своих органов и систем. Информационные ресурсы — это идеи человечества и указания по их реализации, накопленные в форме, позволяющей их воспроизводство. Это книги, статьи, патенты, диссертации, научно-исследовательская и опытно-конструкторская документация, технические переводы, данные о передовом производственном опыте и др. Информационные ресурсы (в отличие от всех других видов ресурсов — трудовых, энергетических, минеральных и т.д.) тем быстрее растут, чем больше их расходуют. Информационная технология — это совокупность методов и устройств, используемых людьми для обработки информации. Человечество занималось обработкой информации тысячи лет. Первые информационные технологии основывались на использовании счѐтов и письменности. Около пятидесяти лет назад началось исключительно быстрое развитие этих технологий, что в первую очередь связано с появлением компьютеров. В настоящее время термин "информационная технология" употребляется в связи с использованием компьютеров для обработки информации. Информационные технологии охватывают всю вычислительную технику и технику связи и, отчасти, — бытовую электронику, телевидение и радиовещание. Они находят применение в промышленности, торговле, управлении, банковской системе, образовании, здравоохранении, медицине и науке, транспорте и связи, сельском хозяйстве, системе социального обеспечения, служат подспорьем людям различных профессий и домохозяйкам. Народы развитых стран осознают, что совершенствование информационных технологий представляетсамую важную, хотя дорогостоящую и трудную задачу. В настоящее время создание крупномасштабных информационно-технологических систем является экономически возможным, и это обусловливает появление национальных исследовательских и образовательных программ, призванных стимулировать их разработку. Информатизация общества — организованный социально-экономический и научнотехнический процесс создания оптимальных условий для удовлетворения информационных потребностей и реализации прав граждан, органов государственной власти, органов местного самоуправления организаций, общественных объединений на основе формирования и использования информационных ресурсов. Цель информатизации — улучшение качества жизни людей за счет увеличения производительности и облегчения условий их труда. Информатизация — это сложный социальный процесс, связанный со значительными изменениями в образе жизни населения. Он требует серьѐзных усилий на многих направлениях, включая ликвидацию компьютерной неграмотности, формирование культуры использования новых информационных технологий и др. 1. 2. 3. 4. 5. Вопросы для самоконтроля В каких единицах измеряется информация? Напишите формулу Хартли Сколько байт в мегабайте? Что такое информационная технология? Назовите свойства информации. Позиционные системы счисления Система счисления — это совокупность приемов и правил, по которым числа записываются и читаются. Существуют позиционные и непозиционные системы счисления. В непозиционных системах счисления вес цифры (т. е. тот вклад, который она вносит в значение числа) не зависит от ее позиции в записи числа. Так, в римской системе счисления в числе ХХХ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]: Для образования целого числа, следующего за любым данным целым числом, нужно продвинуть самую правую цифру числа; если какая-либо цифра после продвижения стала нулем, то нужно продвинуть цифру, стоящую слева от неѐ. Применяя это правило, запишем первые десять целых чисел в двоичной системе: 0, 1, 10, 11, 100, 101, 110, 111, 1000, 1001; в троичной системе: 0, 1, 2, 10, 11, 12, 20, 21, 22, 100; в пятеричной системе: 0, 1, 2, 3, 4, 10, 11, 12, 13, 14; Кроме десятичной широко используются системы с основанием, являющимся целой степенью числа 2, а именно: двоичная (используются цифры 0, 1); восьмеричная (используются цифры 0, 1, ..., 7); шестнадцатеричная (для первых целых чисел от нуля до девяти используются цифры 0, 1, ..., 9, а для следующих чисел — от десяти до пятнадцати — в качестве цифр используются символы A, B, C, D, E, F). Полезно запомнить запись в этих системах счисления первых двух десятков целых чисел: 10-я 2-я 8-я 16-я 10-я 2-я 8-я 16-я 10 1010 12 A 1 1 1 1 11 1011 13 B 2 10 2 2 12 1100 14 C 3 11 3 3 13 1101 15 D 4 100 4 4 14 1110 16 E 5 101 5 5 15 1111 17 F 6 110 6 6 16 10000 20 10 7 111 7 7 17 10001 21 11 8 1000 10 8 18 10010 22 12 9 1001 11 9 19 10011 23 13 Из всех систем счисления особенно проста и поэтому интересна для технической реализации в компьютерах двоичная система счисления. Люди предпочитают десятичную систему, вероятно, потому, что с древних времен считали по пальцам, а пальцев у людей по десять на руках и ногах. Не всегда и не везде люди пользуются десятичной системой счисления. В Китае, например, долгое время пользовались пятеричной системой счисления. А компьютеры используют двоичную систему потому, что она имеет ряд преимуществ перед другими системами: для ее реализации нужны технические устройства с двумя устойчивыми состояниями (есть ток — нет тока, намагничен — не намагничен и т.п.), а не, например, с десятью, — как в десятичной; представление информации посредством только двух состояний надежно и помехоустойчиво; возможно применение аппарата булевой алгебры для выполнения логических преобразований информации; двоичная арифметика намного проще десятичной. Недостаток двоичной системы — быстрый рост числа разрядов, необходимых для записи чисел. Двоичная система, удобная для компьютеров, для человека неудобна из-за ее громоздкости и непривычной записи. Перевод чисел из десятичной системы в двоичную и наоборот выполняет машина. Однако, чтобы профессионально использовать компьютер, следует научиться понимать слово машины. Для этого и разработаны восьмеричная и шестнадцатеричная системы. Числа в этих системах читаются почти так же легко, как десятичные, требуют соответственно в три (восьмеричная) и в четыре (шестнадцатеричная) раза меньше разрядов, чем в двоичной системе (ведь числа 8 и 16 — соответственно, третья и четвертая степени числа 2). Перевод восьмеричных и шестнадцатеричных чисел в двоичную систему очень прост: достаточно каждую цифру заменить эквивалентной ей двоичной триадой (тройкой цифр) или тетрадой (четверкой цифр). Например: Чтобы перевести число из двоичной системы в восьмеричную или шестнадцатеричную, его нужно разбить влево и вправо от запятой на триады (для восьмеричной) или тетрады (для шестнадцатеричной) и каждую такую группу заменить соответствующей восьмеричной (шестнадцатеричной) цифрой. Например, Для перевода целого десятичного числа N в систему счисления с основанием q необходимо N разделить с остатком ("нацело") на q , записанное в той же десятичной системе. Затем неполное частное, полученное от такого деления, нужно снова разделить с остатком на q , и т.д., пока последнее полученное неполное частное не станет равным нулю. Представлением числа N в новой системе счисления будет последовательность остатков деления, изображенных одной q-ичной цифрой и записанных в порядке, обратном порядку их получения. Пример: Переведем число 75 из десятичной системы в двоичную, восьмеричную и шестнадцатеричную: Ответ: 7510 = 1 001 0112 = 1138 = 4B16. Для перевода правильной десятичной дpоби F в систему счисления с основанием q необходимо F умножить на q , записанное в той же десятичной системе, затем дробную часть полученного произведения снова умножить на q, и т. д., до тех пор, пока дpобная часть очередного пpоизведения не станет pавной нулю, либо не будет достигнута требуемая точность изображения числа F в q-ичной системе. Представлением дробной части числа F в новой системе счисления будет последовательность целых частей полученных произведений, записанных в порядке их получения и изображенных одной q-ичной цифрой. Если требуемая точность перевода числа F составляет k знаков после запятой, то предельная абсолютная погрешность при этом равняется q -(k+1) / 2. Пример. Переведем число 0,36 из десятичной системы в двоичную, восьмеричную и шестнадцатеричную: Для чисел, имеющих как целую, так и дробную части, перевод из десятичной системы счисления в другую осуществляется отдельно для целой и дробной частей по правилам, указанным выше. Перевод в десятичную систему числа x, записанного в q-ичной cистеме счисления (q = 2, 8 или 16) в виде xq = (anan-1 ... a0 , a-1 a-2 ... a-m)q сводится к вычислению значения многочлена x10 = an qn + an-1 qn-1 + ... + a0 q0 + a-1 q -1 + a-2 q-2 + средствами десятичной арифметики. ... + a-m q-m Примеpы: Рассмотрим только те системы счисления, которые применяются в компьютерах — десятичную, двоичную, восьмеричную и шестнадцатеричную. Для определенности возьмем произвольное десятичное число, например 46, и для него выполним все возможные последовательные переводы из одной системы счисления в другую. Порядок переводов определим в соответствии с рисунком: На этом рисунке использованы следующие обозначения: в кружках записаны основания систем счисления; стрелки указывают направление перевода; номер рядом со стрелкой означает порядковый номер соответствующего примера в сводной таблице 4.1. Например: означает перевод из двоичной системы в шестнадцатеричную, имеющий в таблице порядковый номер 6. Сводная таблица переводов целых чисел Таблица 4.1. Рассмотрим основные арифметические операции: сложение, вычитание, умножение и деление. Правила выполнения этих операций в десятичной системе хорошо известны — это сложение, вычитание, умножение столбиком и деление углом. Эти правила применимы и ко всем другим позиционным системам счисления. Только таблицами сложения и умножения надо пользоваться особыми для каждой системы. Сложение Таблицы сложения легко Сложение в двоичной системе составить, используя Правило Счета. Сложение в восьмеричной системе Сложение в шестнадцатиричной системе При сложении цифры суммируются по разрядам, и если при этом возникает избыток, то он переносится влево. Пример 1. Сложим числа 15 и 6 в различных системах счисления. Шестнадцатеричная: F16+616 Пример 2. Сложим числа 15, 7 и 3. Ответ: 15+6 = 2110 = 101012 = 258 = 1516. Проверка. Преобразуем полученные суммы к десятичному виду: 101012 = 24 + 22 + 20 = 16+4+1=21, 258 = 2 . 81 + 5 . 80 = 16 + 5 = 21, 1516 = 1 . 161 + 5 . 160 = 16+5 = 21. Шестнадцатеричная: F16+716+316 Ответ: 5+7+3 = 2510 = 110012 = 318 = 1916. Проверка: 110012 = 24 + 23 + 20 = 16+8+1=25, 318 = 3 . 81 + 1 . 80 = 24 + 1 = 25, 1916 = 1 . 161 + 9 . 160 = 16+9 = 25. Пример 3. Сложим числа 141,5 и 59,75. Ответ: 141,5 + 59,75 = 201,2510 = 11001001,012 = 311,28 = Проверка. Преобразуем полученные суммы к десятичному 11001001,012 = 27 + 26 + 23 + 20 + 2-2 = . 2 1 . . -1 311,28 = 3 8 + 18 + 1 8 + 2 8 = C9,416 = 12 . 161 + 9 . 160 + 4 . 16-1 = 201,25 Вычитание Пример 4. Вычтем единицу из чисел 102, 108 и 1016 Пример 5. Вычтем единицу из чисел 1002, 1008 и 10016. C9,416 виду: 201,25 201,25 Пример 6. Вычтем число 59,75 из числа 201,25. Ответ: 201,2510 - 59,7510 = 141,510 = 10001101,12 Проверка. Преобразуем полученные разности к 7 3 2 10001101,12 = 2 + 2 + 2 + 2 215,48 = 2 . 82 + 1 . 81 + 5 . 80 + 8D,816 = 8 . 161 + D . 160 + 8 . 16-1 = 141,5. = 215,48 = десятичному + 2-1 = . 4 8-1 = 8D,816. виду: 141,5; 141,5; Умножение Выполняя умножение многозначных чисел в различных позиционных системах счисления, можно использовать обычный алгоритм перемножения чисел в столбик, но при этом результаты перемножения и сложения однозначных чисел необходимо заимствовать из соответствующих рассматриваемой системе таблиц умножения и сложения. Умножение в двоичной системе Умножение в восьмеричной системе Ввиду чрезвычайной простоты таблицы умножения в двоичной системе, умножение сводится лишь к сдвигам множимого и сложениям. Пример 7. Перемножим числа 5 и 6. Ответ: Проверка. 111102 368 . 5 Преобразуем = 24 = 6 = полученные + 23 1 38 3010 = 111102 = произведения к десятичному + 22 + 21 = + 68 = 368. виду: 30; 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 = Пример 10. Разделим число 5865 на число 115. Восьмеричная: 133518 :1638 510 = 1012 = 5 8. Ответ: 5865 : 115 = 5110 = Проверка. Преобразуем полученные частные к 1100112 = 25 + 24 + 21 + 20 = 51; 638 = 6 . 1100112 = десятичному 81 + 3 . 80 638. виду: = 51. Пример 11. Разделим число 35 на число 14. Восьмеричная: 438 : 168 Ответ: 35 : 14 = Проверка. Преобразуем полученные 10,12 = 21 + . . -1 2,48 = 2 8 + 4 8 = 2,5. 2,510 = частные 2 к -1 10,12 = десятичному = 2,48. виду: 2,5; Вопросы для самоконтроля Что такое позиционная система счисления? Что такое основание системы счисления? Что такое придвижение цифры? Сформулируйте правило перевода из двоичной системы счисления в восьмеричную? 5. Сформулируйте правило перевода из десятичной системы счисления в двоичную?. 1. 2. 3. 4. Логические операции и законы Алгебра логики — это раздел математики, изучающий высказывания, рассматриваемые со стороны их логических значений (истинности или ложности) и логических операций над ними. Алгебра логики возникла в середине Х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". Каждая логическая связка рассматривается как операция над логическими высказываниями и имеет свое название и обозначение: НЕ Операция, выражаемая словом "не", называется отрицанием и обозначается чертой над высказыванием (или знаком ). Высказывание истинно, когда A ложно, и ложно, когда A истинно. Пример. "Луна — спутник Земли" (А); "Луна — не спутник Земли" ( ). И Операция, выражаемая связкой "и", называется конъюнкцией (лат. conjunctio — соединение) или логическим умножением и обозначается точкой " . " (может также обозначаться знаками или &). Высказывание А . В истинно тогда и только тогда, когда оба высказывания А и В истинны. Например, высказывание "10 делится на 2 и 5 больше 3" истинно, а высказывания "10 делится на 2 и 5 не больше 3", "10 не делится на 2 и 5 больше 3", "10 не делится на 2 и 5 не больше 3" — ложны. ИЛИ Операция, выражаемая связкой "или" (в неисключающем смысле этого слова), называется дизъюнкцией (лат. disjunctio — разделение) или логическим сложением и обозначается знаком v (или плюсом). Высказывание А v В ложно тогда и только тогда, когда оба высказывания А и В ложны. Например, высказывание "10 не делится на 2 или 5 не больше 3" ложно, а высказывания "10 делится на 2 или 5 больше 3", "10 делится на 2 или 5 не больше 3", "10 не делится на 2 или 5 больше 3" — истинны. ЕСЛИ-ТО Операция, выражаемая связками "если ..., то", "из ... следует", "... влечет ...", называется импликацией (лат. implico — тесно связаны) и обозначается знаком . Высказывание ложно тогда и только тогда, когда А истинно, а В ложно. Каким же образом импликация связывает два элементарных высказывания? Покажем это на примере высказываний: "данный четырѐхугольник — квадрат" (А) и "около данного четырѐхугольника можно описать окружность" (В). Рассмотрим составное высказывание , понимаемое как "если данный четырѐхугольник квадрат, то около него можно описать окружность". Есть три варианта, когда высказывание истинно: 1. А истинно и В истинно, то есть данный четырѐхугольник квадрат, и около него можно описать окружность; 2. А ложно и В истинно, то есть данный четырѐхугольник не является квадратом, но около него можно описать окружность (разумеется, это справедливо не для всякого четырѐхугольника); 3. A ложно и B ложно, то есть данный четырѐхугольник не является квадратом, и около него нельзя описать окружность. Ложен только один вариант, когда А истинно, а В ложно, то есть данный четырѐхугольник является квадратом, но около него нельзя описать окружность. В обычной речи связка "если ..., то" описывает причинно-следственную связь между высказываниями. Но в логических операциях смысл высказываний не учитывается. Рассматривается только их истинность или ложность. Поэтому не надо смущаться "бессмысленностью" импликаций, образованных высказываниями, совершенно не связанными по содержанию. Например, такими: "если президент США — демократ, то в Африке водятся жирафы", "если арбуз — ягода, то в бензоколонке есть бензин". РАВНОСИЛЬНО Операция, выражаемая связками "тогда и только тогда", "необходимо и достаточно", "... равносильно ...", называется эквиваленцией или двойной импликацией и обозначается знаком или ~. Высказывание истинно тогда и только тогда, когда значения А и В совпадают. Например, высказывания "24 делится на 6 тогда и только тогда, когда 24 делится на 3", "23 делится на 6 тогда и только тогда, когда 23 делится на 3" истинны, а высказывания "24 делится на 6 тогда и только тогда, когда 24 делится на 5", "21 делится на 6 тогда и только тогда, когда 21 делится на 3" ложны. Высказывания А и В, образующие составное высказывание , могут быть совершенно не связаны по содержанию, например: "три больше двух" (А), "пингвины живут в Антарктиде" (В). Отрицаниями этих высказываний являются высказывания "три не больше двух" ( ), "пингвины не живут в Антарктиде" ( высказывания A ложны. B и ). Образованные из высказываний А и В составные истинны, а высказывания A и B— Итак, нами рассмотрены пять логических операций: отрицание, конъюнкция, дизъюнкция, импликация и эквиваленция. Импликацию можно выразить через дизъюнкцию и отрицание: А В= v В. Эквиваленцию можно выразить через отрицание, дизъюнкцию и конъюнкцию: А В=( v В) . ( v А). Таким образом, операций отрицания, дизъюнкции и конъюнкции достаточно, чтобы описывать и обрабатывать логические высказывания. Порядок выполнения логических операций задается круглыми скобками. Но для уменьшения числа скобок договорились считать, что сначала выполняется операция отрицания ("не"), затем конъюнкция ("и"), после конъюнкции — дизъюнкция ("или") и в последнюю очередь — импликация. С помощью логических переменных и символов логических операций любое высказывание можно формализовать, то есть заменить логической формулой. Определение логической формулы: 1. Всякая логическая переменная и символы "истина" ("1") и "ложь" ("0") — формулы. 2. Если А и В — формулы, то , А . В, А v В, формулы. 3. Никаких других формул в алгебре логики нет. А B, А В — В п. 1 определены элементарные формулы; в п. 2 даны правила образования из любых данных формул новых формул. В качестве примера рассмотрим высказывание "если я куплю яблоки или абрикосы, то приготовлю фруктовый пирог". Это высказывание формализуется в виде (A v B) C. Такая же формула соответствует высказыванию "если Игорь знает английский или японский язык, то он получит место переводчика". Как показывает анализ формулы (A v B) C, при определѐнных сочетаниях значений переменных A, B и C она принимает значение "истина", а при некоторых других сочетаниях — значение "ложь" (разберите самостоятельно эти случаи). Такие формулы называются выполнимыми. Некоторые формулы принимают значение "истина" при любых значениях истинности входящих в них переменных. Таковой будет, например, формула А v , соответствующая высказыванию "Этот треугольник прямоугольный или косоугольный". Эта формула истинна и тогда, когда треугольник прямоугольный, и тогда, когда треугольник не прямоугольный. Такие формулы называются тождественно истинными формулами или тавтологиями. Высказывания, которые формализуются тавтологиями, называются логически истинными высказываниями. В качестве другого примера рассмотрим формулу А . , которой соответствует, например, высказывание "Катя самая высокая девочка в классе, и в классе есть девочки выше Кати". Очевидно, что эта формула ложна, так как либо А, либо обязательно ложно. Такие формулы называются тождественно ложными формулами или противоречиями. Высказывания, которые формализуются противоречиями, называются логически ложными высказываниями. Если две формулы А и В одновременно, то есть при одинаковых наборах значений входящих в них переменных, принимают одинаковые значения, то они называются равносильными. Равносильность двух формул алгебры логики обозначается символом "=" или символом " " Замена формулы другой, ей равносильной, называется равносильным преобразованием данной формулы. Математический аппарат алгебры логики очень удобен для описания того, как функционируют аппаратные средства компьютера, поскольку основной системой счисления в компьютере является двоичная, в которой используются цифры 1 и 0, а значений логических переменных тоже два: “1” и “0”. Из этого следует два вывода: 1. одни и те же устройства компьютера могут применяться для обработки и хранения как числовой информации, представленной в двоичной системе счисления, так и логических переменных; 2. на этапе конструирования аппаратных средств алгебра логики позволяет значительно упростить логические функции, описывающие функционирование схем компьютера, и, следовательно, уменьшить число элементарных логических элементов, из десятков тысяч которых состоят основные узлы компьютера. Данные и команды представляются в виде двоичных последовательностей различной структуры и длины. Существуют различные физические способы кодирования двоичной информации. Мы уже рассмотрели способы записи двоичной информации на магнитных дисках и на CD-ROM. В электронных устройствах компьютера двоичные единицы чаще всего кодируются более высоким уровнем напряжения, чем двоичные нули (или наоборот), например: 5.5. Что такое логический элемент компьютера? Логический элемент компьютера — это часть электронной логичеcкой схемы, которая реализует элементарную логическую функцию. Логическими элементами компьютеров являются электронные схемы И, ИЛИ, НЕ, И— НЕ, ИЛИ—НЕ и другие (называемые также вентилями), а также триггер. С помощью этих схем можно реализовать любую логическую функцию, описывающую работу устройств компьютера. Обычно у вентилей бывает от двух до восьми входов и один или два выхода. Чтобы представить два логических состояния — “1” и “0” в вентилях, соответствующие им входные и выходные сигналы имеют один из двух установленных уровней напряжения. Например, +5 вольт и 0 вольт. Высокий уровень обычно соответствует значению “истина” (“1”), а низкий — значению “ложь” (“0”). Каждый логический элемент имеет свое условное обозначение, которое выражает его логическую функцию, но не указывает на то, какая именно электронная схема в нем реализована. Это упрощает запись и понимание сложных логических схем. Работу логических элементов описывают с помощью таблиц истинности. Таблица истинности это табличное представление логической схемы (операции), в котором перечислены все возможные сочетания значений истинности входных сигналов (операндов) вместе со значением истинности выходного сигнала (результата операции) для каждого из этих сочетаний. 5.6. Что такое схемы И, ИЛИ, НЕ, И—НЕ, ИЛИ—НЕ? Схема И Схема И реализует конъюнкцию двух или более логических значений. Условное обозначение на структурных схемах схемы И с двумя входами представлено на рис. 5.1. Рис. 5.1 Таблица истинности схемы И x y x.y 1 1 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 Таблица истинности схемы ИЛИ x y xvy 1 1 1 1 1 1 1 С х е м а НЕ Схема НЕ (инвертор) реализует операцию отрицания. Связь между входом x этой схемы и выходом z можно записать соотношением z = , x где читается как "не x" или "инверсия х". Если на входе схемы 0, то на выходе 1. Когда на входе 1, на выходе 0. Условное обозначение на структурных схемах инвертора — на рисунке 5.3 Рис. 5.3 Таблица истинности схемы НЕ x 1 1 С х е м а И—НЕ Схема И—НЕ состоит из элемента И и инвертора и осуществляет отрицание результата схемы И. Связь между выходом z и входами x и y схемы записывают следующим образом: , где читается как "инверсия x и y". Условное обозначение на структурных схемах схемы И— НЕ с двумя входами представлено на рисунке 5.4. Рис. 5.4 Таблица истинности схемы И—НЕ x y 1 1 1 1 1 1 1 С х е м а ИЛИ—НЕ Схема ИЛИ—НЕ состоит из элемента ИЛИ и инвертора и осуществляет отрицание результата схемы ИЛИ. Связь между выходом z и входами x и y схемы записывают следующим образом: , где , читается как "инверсия x или y ". Условное обозначение на структурных схемах схемы ИЛИ—НЕ с двумя входами представлено на рис. 5.5. Рис. 5.5 Таблица истинности схемы ИЛИ—НЕ x y 1 1 1 1 1 Триггер — это электронная схема, широко применяемая в регистрах компьютера для надѐжного запоминания одного разряда двоичного кода. Триггер имеет два устойчивых состояния, одно из которых соответствует двоичной единице, а другое — двоичному нулю. Термин триггер происходит от английского слова 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 запрещено 1 1 1 1 1 1 хранение бита Проанализируем возможные комбинации значений входов R и S триггера, используя его схему и таблицу истинности схемы ИЛИ—НЕ (табл. 5.5). 1. Если на входы триггера подать S=“1”, R=“0”, то (независимо от состояния) на выходе Q верхнего вентиля появится “0”. После этого на входах нижнего вентиля окажется R=“0”, Q=“0” и выход станет равным “1”. 2. Точно так же при подаче “0” на вход S и “1” на вход R на выходе появится “0”, а на Q — “1”. 3. Если на входы R и S подана логическая “1”, то состояние Q и не меняется. 4. Подача на оба входа R и S логического “0” может привести к неоднозначному результату, поэтому эта комбинация входных сигналов запрещена. Поскольку один триггер может запомнить только один разряд двоичного кода, то для запоминания байта нужно 8 триггеров, для запоминания килобайта, соответственно, 8 х 2 10 = 8192 триггеров. Современные микросхемы памяти содержат миллионы триггеров. Сумматор — это электронная логическая схема, выполняющая суммирование двоичных чисел. Сумматор служит, прежде всего, центральным узлом арифметико-логического устройства компьютера, однако он находит применение также и в других устройствах машины. Многоразрядный двоичный сумматор, предназначенный для сложения многоразрядных двоичных чисел, представляет собой комбинацию одноразрядных сумматоров, с рассмотрения которых мы и начнѐм. Условное обозначение одноразрядного сумматора на рис. 5.8. Рис. 5.8 При сложении чисел A и B в одном i-ом разряде приходится иметь дело с тремя цифрами: 1. цифра ai первого слагаемого; 2. цифра bi второго слагаемого; 3. перенос pi–1 из младшего разряда. В результате сложения получаются две цифры: 1. цифра ci для суммы; 2. перенос pi из данного разряда в старший. Таким образом, одноразрядный двоичный сумматор есть устройство с тремя входами и двумя выходами, работа которого может быть описана следующей таблицей истинности: Входы Выходы Первое слагаемое Второе слагаемое Перенос Сумма Перенос 1 1 1 1 1 1 1 1 1 1 1 1 1 1 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. В первых двух столбцах таблицы запишем четыре возможных пары значений этих переменных, в последующих столбцах — значения промежуточных формул и в последнем столбце — значение формулы. В результате получим таблицу: Переменные Промежуточные логические формулы Формула 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Из таблицы видно, что при всех наборах значений переменных x и y формула принимает значение 1, то есть является тождественно истинной. 2. Таблица истинности для формулы : Переменные Промежуточные логические формулы Формула 1 1 1 1 1 1 1 1 1 1 1 Из таблицы видно, что при всех наборах значений переменных x и y формула принимает значение 0, то есть является тождественно ложной. 3. Таблица истинности для формулы : Переменные Промежуточные логические формулы Формула 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Из таблицы видно, что формула в некоторых случаях принимает значение 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. составлению функции проводимости по таблице истинности, отражающей эти условия; 2. упрощению этой функции; 3. построению соответствующей схемы. АНАЛИЗ СХЕМЫ сводится к 1. определению значений еѐ функции проводимости при всех возможных наборах входящих в эту функцию переменных. 2. получению упрощѐнной формулы. Примеры. 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. Упрощенная схема : в) Упрощенная схема: г) Упрощенная схема: д) (по закону склеивания) Упрощенная схема: е) Решение: Упрощенная схема: Разнообразие логических задач очень велико. Способов их решения тоже немало. Но наибольшее распространение получили следующие три способа решения логических задач: средствами алгебры логики; табличный; с помощью рассуждений. Познакомимся с ними поочередно. I. Решение логических задач средствами алгебры логики Обычно используется следующая схема решения: 1. изучается условие задачи; 2. вводится система обозначений для логических высказываний; 3. конструируется логическая формула, описывающая логические связи между всеми высказываниями условия задачи; 4. определяются значения истинности этой логической формулы; 5. из полученных значений истинности формулы определяются значения истинности введѐнных логических высказываний, на основании которых делается заключение о решении. Пример 1. Трое друзей, болельщиков автогонок "Формула-1", спорили о результатах предстоящего этапа гонок. — Вот увидишь, Шумахер не придет первым, — сказал Джон. Первым будет Хилл. — Да нет же, победителем будет, как всегда, Шумахер, — воскликнул Ник. — А об Алези и говорить нечего, ему не быть первым. Питер, к которому обратился Ник, возмутился: — Хиллу не видать первого места, а вот Алези пилотирует самую мощную машину. По завершении этапа гонок оказалось, что каждое из двух предположений двоих друзей подтвердилось, а оба предположения третьего из друзей оказались неверны. Кто выиграл этап гонки? Решение. Введем обозначения для логических высказываний: Ш — победит Шумахер; Х — победит Хилл; А — победит Алези. Реплика Ника "Алези пилотирует самую мощную машину" не содержит никакого утверждения о месте, которое займѐт этот гонщик, поэтому в дальнейших рассуждениях не учитывается. Зафиксируем высказывания каждого из друзей: Учитывая то, что предположения двух друзей подтвердились, а предположения третьего неверны, запишем и упростим истинное высказывание Высказывание истинно только при Ш=1, А=0, Х=0. Ответ. Победителем этапа гонок стал Шумахер. Пример 2. Некий любитель приключений отправился в кругосветное путешествие на яхте, оснащѐнной бортовым компьютером. Его предупредили, что чаще всего выходят из строя три узла компьютера — a, b, c, и дали необходимые детали для замены. Выяснить, какой именно узел надо заменить, он может по сигнальным лампочкам на контрольной панели. Лампочек тоже ровно три: x, y и z. Инструкция по выявлению неисправных узлов такова: 1. если неисправен хотя бы один из узлов компьютера, то горит по крайней мере одна из лампочек x, y, z; 2. если неисправен узел a, но исправен узел с, то загорается лампочка y; 3. если неисправен узел с, но исправен узел b, загорается лампочка y, но не загорается лампочка x; 4. если неисправен узел b, но исправен узел c, то загораются лампочки x и y или не загорается лампочка x; 5. если горит лампочка х и при этом либо неисправен узел а, либо все три узла a, b, c исправны, то горит и лампочка y. В пути компьютер сломался. На контрольной панели загорелась лампочка x. Тщательно изучив инструкцию, путешественник починил компьютер. Но с этого момента и до конца плавания его не оставляла тревога. Он понял, что инструкция несовершенна, и есть случаи, когда она ему не поможет. Какие узлы заменил путешественник? Какие изъяны он обнаружил в инструкции? Решение. Введем обозначения для логических высказываний: a — неисправен узел а; x — горит лампочка х; b — неисправен узел b; y — горит лампочка y; с — неисправен узел с; z — горит лампочка z. Правила 1-5 выражаются следующими формулами: Формулы 1-5 истинны по условию, следовательно, их конъюнкция тоже истинна: Выражая импликацию через дизъюнкцию и отрицание (напомним, что получаем: ), Подставляя в это тождество конкретные значения истинности x=1, y=0, z=0, получаем: Отсюда следует, что a=0, b=1, c=1. Ответ на первый вопрос задачи: нужно заменить блоки b и c; блок а не требует замены. Ответ на второй вопрос задачи получите самостоятельно. II. Решение логических задач табличным способом При использовании этого способа условия, которые содержит задача, и результаты рассуждений фиксируются с помощью специально составленных таблиц. Пример 3. В симфонический оркестр приняли на работу трѐх музыкантов: Брауна, Смита и Вессона, умеющих играть на скрипке, флейте, альте, кларнете, гобое и трубе. Известно, что: 1. Смит самый высокий; 2. играющий на скрипке меньше ростом играющего на флейте; 3. играющие на скрипке и флейте и Браун любят пиццу; 4. когда между альтистом и трубачом возникает ссора, Смит мирит их; 5. Браун не умеет играть ни на трубе, ни на гобое. На каких инструментах играет каждый из музыкантов, если каждый владеет двумя инструментами? Решение. Составим таблицу и отразим в ней условия задачи, заполнив соответствующие клетки цифрами 0 и 1 в зависимости от того, ложно или истинно соответствующее высказывание. Так как музыкантов трoе, инструментов шесть и каждый владеет только двумя инструментами, получается, что каждый музыкант играет на инструментах, которыми остальные не владеют. Из условия 4 следует, что Смит не играет ни на альте, ни на трубе, а из условий 3 и 5, что Браун не умеет играть на скрипке, флейте, трубе и гобое. Следовательно, инструменты Брауна — альт и кларнет. Занесем это в таблицу, а оставшиеся клетки столбцов "альт" и "кларнет" заполним нулями: скрипка флейта альт кларнет гобой труба 1 1 Смит Вессон Браун Из таблицы видно, что на трубе может играть только Вессон. Из условий 1 и 2 следует, что Смит не скрипач. Так как на скрипке не играет ни Браун, ни Смит, то скрипачом является Вессон. Оба инструмента, на которых играет Вессон, теперь определены, поэтому остальные клетки строки "Вессон" можно заполнить нулями: скрипка флейта альт кларнет гобой труба Браун 1 1 Смит Вессон 1 1 Из таблицы видно, что играть на флейте и на гобое может только Смит. скрипка флейта альт кларнет гобой труба Браун 1 1 Смит 1 1 Вессон 1 1 Ответ: Браун играет на альте и кларнете, Смит — на флейте и гобое, Вессон — на скрипке и трубе. Пример 4. Три одноклассника — Влад, Тимур и Юра, встретились спустя 10 лет после окончания школы. Выяснилось, что один из них стал врачом, другой физиком, а третий юристом. Один полюбил туризм, другой бег, страсть третьего — регби. Юра сказал, что на туризм ему не хватает времени, хотя его сестра — единственный врач в семье, заядлый турист. Врач сказал, что он разделяет увлечение коллеги. Забавно, но у двоих из друзей в названиях их профессий и увлечений не встречается ни одна буква их имен. Определите, кто чем любит заниматься в свободное время и у кого какая профессия. Решение. Здесь исходные данные разбиваются на тройки (имя — профессия — увлечение). Из слов Юры ясно, что он не увлекается туризмом и он не врач. Из слов врача следует, что он турист. Имя Юра Профессия врач Увлечение туризм Буква "а", присутствующая в слове "врач", указывает на то, что Влад тоже не врач, следовательно врач — Тимур. В его имени есть буквы "т" и "р", встречающиеся в слове "туризм", следовательно второй из друзей, в названиях профессии и увлечения которого не встречается ни одна буква его имени — Юра. Юра не юрист и не регбист, так как в его имени содержатся буквы "ю" и "р". Следовательно, окончательно имеем: Имя Юра Тимур Влад Профессия физик врач юрист Увлечение бег туризм регби Ответ. Влад — юрист и регбист, Тимур — врач и турист, Юра — физик и бегун. Пример 5. Три дочери писательницы Дорис Кей — Джуди, Айрис и Линда, тоже очень талантливы. Они приобрели известность в разных видах искусств — пении, балете и кино. Все они живут в разных городах, поэтому Дорис часто звонит им в Париж, Рим и Чикаго. Известно, что: 1. Джуди живет не в Париже, а Линда — не в Риме; 2. парижанка не снимается в кино; 3. та, кто живет в Риме, певица; 4. Линда равнодушна к балету. Где живет Айрис, и какова ее профессия? Решение. Составим таблицу и отразим в ней условия 1 и 4, заполнив клетки цифрами 0 и 1 в зависимости от того, ложно или истинно соответствующее высказывание: Париж Рим Чикаго Пение Балет Кино Джуди Айрис Линда Далее рассуждаем следующим образом. Так как Линда живет не в Риме, то, согласно условию 3, она не певица. В клетку, соответствующую строке "Линда" и столбцу "Пение", ставим 0. Из таблицы сразу видно, что Линда киноактриса, а Джуди и Айрис не снимаются в кино. Париж Рим Чикаго Пение Балет Кино Джуди Айрис Линда 1 Согласно условию 2, парижанка не снимается в кино, следовательно, Линда живет не в Париже. Но она живет и не в Риме. Следовательно, Линда живет в Чикаго. Так как Линда и Джуди живут не в Париже, там живет Айрис. Джуди живет в Риме и, согласно условию 3, является певицей. А так как Линда киноактриса, то Айрис балерина. В результате постепенного заполнения получаем следующую таблицу: Париж Рим Чикаго Пение Балет Кино 1 Джуди 1 1 Айрис 1 1 Линда 1 Ответ. Айрис балерина. Она живет в Париже. III. Решение логических задач с помощью рассуждений Этим способом обычно решают несложные логические задачи. Пример 6. Вадим, Сергей и Михаил изучают различные иностранные языки: китайский, японский и арабский. На вопрос, какой язык изучает каждый из них, один ответил: "Вадим изучает китайский, Сергей не изучает китайский, а Михаил не изучает арабский". Впоследствии выяснилось, что в этом ответе только одно утверждение верно, а два других ложны. Какой язык изучает каждый из молодых людей? Решение. Имеется три утверждения: 1. Вадим изучает китайский; 2. Сергей не изучает китайский; 3. Михаил не изучает арабский. Если верно первое утверждение, то верно и второе, так как юноши изучают разные языки. Это противоречит условию задачи, поэтому первое утверждение ложно. Если верно второе утверждение, то первое и третье должны быть ложны. При этом получается, что никто не изучает китайский. Это противоречит условию, поэтому второе утверждение тоже ложно. Остается считать верным третье утверждение, а первое и второе — ложными. Следовательно, Вадим не изучает китайский, китайский изучает Сергей. Ответ: Сергей изучает китайский язык, Михаил — японский, Вадим — арабский. Пример 7. В поездке пятеро друзей — Антон, Борис, Вадим, Дима и Гриша, знакомились с попутчицей. Они предложили ей отгадать их фамилии, причѐм каждый из них высказал одно истинное и одно ложное утверждение: Дима сказал: "Моя фамилия — Мишин, а фамилия Бориса — Хохлов". Антон сказал: "Мишин — это моя фамилия, а фамилия Вадима — Белкин". Борис сказал: "Фамилия Вадима — Тихонов, а моя фамилия — Мишин". Вадим сказал: "Моя фамилия — Белкин, а фамилия Гриши — Чехов". Гриша сказал: "Да, моя фамилия Чехов, а фамилия Антона — Тихонов". Какую фамилию носит каждый из друзей? Решение. Обозначим высказывательную форму "юноша по имени А носит фамилию Б" как А Б, где буквы А и Б соответствуют начальным буквам имени и фамилии. Зафиксируем высказывания каждого из друзей: 1. ДМ и БХ; 2. АМ и ВБ; 3. ВТ и БМ; 4. ВБ и ГЧ; 5. ГЧ и АТ. Допустим сначала, что истинно ДМ. Но, если истинно ДМ, то у Антона и у Бориса должны быть другие фамилии, значит АМ и БМ ложно. Но если АМ и БМ ложны, то должны быть истинны ВБ и ВТ, но ВБ и ВТ одновременно истинными быть не могут. Значит остается другой случай: истинно БХ. Этот случай приводит к цепочке умозаключений: БХ истинно БМ ложно ВТ истинно АТ ложно ГЧ истинно ВБ ложно АМ истинно. Ответ: Борис — Хохлов, Вадим — Тихонов, Гриша — Чехов, Антон — Мишин, Дима — Белкин. Пример 8.Министры иностранных дел России, США и Китая обсудили за закрытыми дверями проекты соглашения о полном разоружении, представленные каждой из стран. Отвечая затем на вопрос журналистов: "Чей именно проект был принят?", министры дали такие ответы: Россия — "Проект не наш, проект не США"; США — "Проект не России, проект Китая"; Китай — "Проект не наш, проект России". Один из них (самый откровенный) оба раза говорил правду; второй (самый скрытный) оба раза говорил неправду, третий (осторожный) один раз сказал правду, а другой раз — неправду. Определите, представителями каких стран являются откровенный, скрытный и осторожный министры. Решение. Для удобства записи пронумеруем высказывания дипломатов: Россия — "Проект не наш" (1), "Проект не США" (2); США — "Проект не России" (3), "Проект Китая" (4); Китай — "Проект не наш" (5), "Проект России" (6). Узнаем, кто из министров самый откровенный. Если это российский министр, то из справедливости (1) и (2) следует, что победил китайский проект. Но тогда оба утверждения министра США тоже справедливы, чего не может быть по условию. Если самый откровенный — министр США, то тогда вновь получаем, что победил китайский проект, значит оба утверждения российского министра тоже верны, чего не может быть по условию. Получается, что наиболее откровенным был китайский министр. Действительно, из того, что (5) и (6) справедливы, cледует, что победил российский проект. А тогда получается, что из двух утверждений российского министра первое ложно, а второе верно. Оба же утверждения министра США неверны. Ответ: Откровеннее был китайский министр, осторожнее — российский, скрытнее — министр США. Вопросы для самоконтроля 6. Что такое высказывание? 7. Что такое алгебра логики? 8. Перечислите основные логически операции 9. Запишите таблицы истинности для операций импликации и эквиваленции 10. Сформулируйте правила де Моргана. Программное обеспечение ЭВМ Под программным обеспечением (Software) понимается совокупность программ, выполняемых вычислительной системой. К программному обеспечению (ПО) относится также вся область деятельности по проектированию и разработке ПО: технология проектирования программ (например, нисходящее проектирование, структурное и объектно-ориентированное проектирование и др.); методы тестирования программ; методы доказательства правильности программ; анализ качества работы программ; документирование программ; разработка и использование программных средств, облегчающих процесс проектирования программного обеспечения, и многое другое. Программное обеспечение — неотъемлемая часть компьютерной системы. Оно является логическим продолжением технических средств. Сфера применения конкректного компьютера определяется созданным для него ПО. Сам по себе компьютер не обладает знаниями ни в одной области применения. Все эти знания сосредоточены в выполняемых на компьютерах программах. Программное обеспечение современных компьютеров включает миллионы программ — от игровых до научных. В первом приближении все программы, работающие на компьютере, можно условно разделить на три категории: 1. прикладные программы, непосредственно обеспечивающие выполнение необходимых пользователям работ; 2. системные программы, выполняющие различные вспомогательные функции, например: o управление ресурсами компьютера; o создание копий используемой информации; o проверка работоспособности устройств компьютера; o выдача справочной информации о компьютере и др.; 3. инструментальные программные системы, облегчающие процесс создания новых программ для компьютера. Рис. 6.1. Категории программного обеспечения При построении классификации ПО нужно учитывать тот факт, что стремительное развитие вычислительной техники и расширение сферы приложения компьютеров резко ускорили процесс эволюции программного обеспечения. Если раньше можно было по пальцам перечислить основные категории ПО — операционные системы, трансляторы, пакеты прикладных программ, то сейчас ситуация коренным образом изменилась. Развитие ПО пошло как вглубь (появились новые подходы к построению операционных систем, языков программирования и т.д.), так и вширь (прикладные программы перестали быть прикладными и приобрели самостоятельную ценность). Соотношение между требующимися программными продуктами и имеющимися на рынке меняется очень быстро. Даже классические программные продукты, такие, как операционные системы, непрерывно развиваются и наделяются интеллектуальными функциями, многие из которых ранее относились только к интеллектуальным возможностям человека. Кроме того, появились нетрадиционные программы, классифицировать которые по устоявшимся критериям очень трудно, а то и просто невозможно, как, например, программа — электронный собеседник. На сегодняшний день можно сказать, что более или менее определѐнно сложились следующие группы программного обеспечения: операционные системы и оболочки; системы программирования (трансляторы, библиотеки подпрограмм, отладчики и т.д.); инструментальные системы; интегрированные пакеты программ; динамические электронные таблицы; системы машинной графики; системы управления базами данных (СУБД); прикладное программное обеспечение. Разумеется, эту классификацию нельзя считать исчерпывающей, но она более или менее наглядно отражает направления совершенствования и развития программного обеспечения. Вопросы для самоконтроля 11. Приведите классификацию программного обеспечения 12. Для чего нужны системные программы? 13. Как называются программы, облегчающие процесс создания новых программ для компьютера?
«Основные понятия информатики» 👇
Готовые курсовые работы и рефераты
Купить от 250 ₽
Решение задач от ИИ за 2 минуты
Решить задачу
Помощь с рефератом от нейросети
Написать ИИ

Тебе могут подойти лекции

Смотреть все 462 лекции
Все самое важное и интересное в Telegram

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

Перейти в Telegram Bot