Главная страница
Навигация по странице:

  • Алгоритм

  • 2. Дискретность

  • 5. Конечность

  • Основные алгоритмические структуры: 1) Линейный алгоритм

  • Цикличный алгоритм

  • Разветвляющий алгоритм

  • Языки программирования, классификация языков программирования. Понятие о системе программирования. Язык программирования

  • Система программирования

  • Оператор присваивания. Выражение, приоритеты в выражениях. Оператор присваивания

  • … (X > 5) AND (Y > 10) …

  • *, /, div, mod, and

  • Оператор цикла с заранее известным количеством повторений

  • Архитектура компьютера закрытого типа.

  • Конспект лекций архитектура аппаратных средств. 10.-Конспекты-лекций.-ОП.02-Арх-итектура-аппаратных-средств.-09.. Конспекты лекций по дисциплине


    Скачать 0.6 Mb.
    НазваниеКонспекты лекций по дисциплине
    АнкорКонспект лекций архитектура аппаратных средств
    Дата23.08.2022
    Размер0.6 Mb.
    Формат файлаpdf
    Имя файла10.-Конспекты-лекций.-ОП.02-Арх-итектура-аппаратных-средств.-09..pdf
    ТипКонспект
    #651101
    страница3 из 7
    1   2   3   4   5   6   7
    Замена операций импликации и эквивалентности
    Операций импликации и эквивалентности иногда нет среди логических операций конкретного компьютера или транслятора с языка программирования. Однако для решения многих задач эти операции необходимы. Существуют правила замены данных операций на последовательности операций отрицания, дизъюнкции и конъюнкции.
    Так, заменить операцию импликации можно в соответствии со следующим правилом:
    A → B = ¬A \/ B
    Для замены операции эквивалентности существует два правила:
    В справедливости данных формул легко убедиться, построив таблицы истинности для правой и левой частей обоих тождеств.
    Контрольные вопросы:
    1.
    Какие логические операции применяются в компьютерах?
    2.
    Как можно записать логическую операцию?
    3.
    Охарактеризуйте основные операции

    ЛЕКЦИЯ 5
    Понятие алгоритма. Классификация, структура и свойства алгоритмов. Базовые структуры алгоритмов.
    План.
    1. Понятие алгоритма
    2. Классификация, структура и свойства алгоритмов
    3. Базовые структуры алгоритмов
    Алгоритм – последовательность инструкций, правильное выполнение которых ведет к решению поставленной задачи.
    Основными свойствами алгоритма являются:
    1. Однозначность(предписания алгоритма должны быть сформулированы таким образом, чтобы не допускалось никакой двусмысленности в их толковании).
    2. Дискретность(алгоритм должен быть разделен на ряд инструкций, шагов, каждый из которых представляет собой отдельное законченное действие).
    3. Результативность(решение задачи, для которой разработан алгоритм должно быть достигнуто за конечное число шагов).
    4. Массовость(правильно разработанный алгоритм может использоваться для решения целого класса сходных между собой задач, которые отличаются друг от друга только значениями исходных параметров).
    5. Конечность(каждое действие и алгоритм в целом должны иметь возможность завершения).
    Алгоритм может быть сформулирован тремя различными способами:
    1) Словесная формулировка алгоритма;
    2) Формулировка в виде графической схемы (блок-схема);
    3) Запись алгоритма в виде программы, записанной на одном из языков программирования.
    Основные алгоритмические структуры:
    1) Линейный алгоритм – описание действий, которые выполняются однократно в заданном порядке. Исполнитель выполняет действия последовательно, одно за другим в том порядке, в котором они следуют.
    2) Цикличный алгоритм – описание действий, которые должны повторяться указанное число раз или пока не выполнено заданное условие.
    Перечень повторяющихся действий называют телом
    цикла.
    Циклические алгоритмы бывают двух типов:
    · Циклы со счетчиком, в которых какие-то действия выполняются определенное число раз (используют, когда заранее известно какое число повторений тела цикла необходимо выполнить);
    · Циклы с условием, в которых тело цикла выполняется, в зависимости от какого- либо условия. Различают циклы с предусловием и постусловием.
    ₽3) Разветвляющий алгоритм –алгоритм, в котором в зависимости от условия выполняется либо одна, либо другая последовательность действий.
    Условие – это высказывание, которое может быть либо истинно, либо ложно.
    Существует две формы ветвления – неполная (когда присутствует только одна ветвь, т.е. в зависимости от истинности условия либо выполняется, либо не выполняется действие) и полная (когда присутствуют две ветви, т.е. в зависимости от истинности условия выполняется либо одно, либо другое действие).
    Языки программирования, классификация языков программирования.
    Понятие о системе программирования.

    Язык программирования – это фиксированная система обозначений для описания алгоритмов и структур данных.
    Языки программирования – искусственные языки. От естественных они отличаются ограниченным числом "слов", значение которых понятно транслятору, и очень строгими правилами записи команд (операторов).
    Транслятор — средство для преобразования текстов из одного языка, понятного человеку, в другой язык, понятный компьютеру.
    Транслятор программ может производиться двумя различными способами:
    Интерпретатор (каждая инструкция, вводимая в ПК, сразу же преобразуется в машинный код и выполняется);
    Компилятор (в машинный код переводится только вся программа в целом).
    Изначально программирование производилось с помощью машинных кодов. Машинный код представляет собой запись команд для компьютера в виде чисел, представленных в двоичной системе счисления.
    Язык машинных кодов и язык Ассемблера относятся к языкам низкого уровня, т.е. уровня приближенного к машинной логике.
    Следующим этапом в развитии программирования явилось создание языков
    программирования высокого уровня, т.е. приближенного к естественным человеческим языкам.
    Языки программирования высокого уровня облегчают процесс программирования, т.е. многие инструкции практически представляют собой упрощенные короткие фразы английского языка.
    Программы, написанные на языке высокого уровня, являются машинно- независимыми, т.е. перенос программы с компьютера одной конструкции на другой не представляет собой серьезной проблемы.
    Система программирования – совокупность программных средств, облегчающих написание, отладку диалоговой программы и автоматизирующих её многоэтапное преобразование в исполняемую программу и загрузку в память для выполнения.
    Пример. program Primer; {вычисление суммы двух чисел} var x,y,s: integer; begin
    WriteLn('Введите через пробел два числа ');
    ReadLn(x,y); s := x + y;
    WriteLn('Сумма чисел равна ',s); end.
    Оператор присваивания. Выражение, приоритеты в выражениях.
    Оператор присваивания – основной оператор любого языка программирования.
    Общая форма записи оператора: имя величины := выражение
    Например, V:=A; или V:=A+1;
    переменная := выражение;
    левая_часть := правая_часть;
    Оператор работает справа налево, то есть сначала вычисляется то, что записано в правой части, а затем результат записывается «в левую часть».
    При помощи оператора присваивания переменной могут присваиваться константы и выражения, значения переменных любого типа.
    Как только в программе встречается переменная, для неё в памяти отводится место.
    Оператор присваивания помещает значение переменной или значение выражения в отведённое место.

    Если в процессе выполнения программы встречается переприсваивание (т.е. та же самая переменная принимает другое значение), то старое значение переменной стирается, на свободное место записывается новое значение. Команда присваивания позволяет лучше понять смысл слова переменная (т.е. меняющая своё значение по ходу программы).
    Выражение – это формула для вычисления значения. Она образуется из операндов, соединенных знаками операций и круглыми скобками. В качестве операндов могут выступать переменные, константы, указатели функций.
    Тип переменной в левой части оператора присваивания обычно должен совпадать с типом значения выражения в правой части. Выражения являются составной частью операторов.
    В Pascal выражения вычисляются в соответствии с приоритетами операций.
    Приоритеты выполнения операций следующие (в порядке убывания):
    - одноместный минус;
    - операция NOT;
    - операции типа умножения;
    - операции типа сложения;
    - операции сравнения (отношения).
    Одноместный минус применим к операндам арифметического типа.
    Операция NOT– к операндам логических и целых типов. Если в одном выражении несколько операций одного приоритета, то они выполняются, начиная слева. Приоритеты можно изменить, поставив скобки. В логических выражениях необходимы скобки во избежание конфликта типа по приоритету.
    Например, если в выражении … (X > 5) AND (Y > 10) … не поставить скобки, то будет синтаксическая ошибка, так как приоритет операции AND выше приоритета операций сравнения >. операции типа умножения – это *, /, div, mod, and операции типа сложения – это +, -, or, xor операции сравнения – это <>, <, >, <=, >=, in
    Сравнение строк символов выполняется слева направо посимвольно. Более короткие строки дополняются пробелами справа.
    Оператор цикла с заранее известным количеством повторений
    Инструкция for используется в том случае, если некоторую последовательность действий (инструкций программы) надо выполнить несколько раз, причем число повторений известно.
    В общем виде инструкция for записывается следующим образом: for счетчик := нач_знач to кон_знач do begin
    // здесь инструкции, которые надо выполнить несколько раз end
    Переменная счетчик, выражение нач_знач и кон_знач должны быть целого типа.
    Если в инструкции for вместо слова to записать downto, то поле очередного выполнения инструкций тела цикла значение счетчика будет не увеличиваться, а уменьшаться.
    Текстовые.
    Перед использованием такого файла в программе в разделе описания переменных должна быть обязательно описана связанная с ним переменная. Общий вид описания следующий: var Имя_переменной: text; где:
    Имя_переменной – имя переменной, которая впоследствии будет связана с файлом; text — соответствующий тип переменной.

    Для того, чтобы с файлом в дальнейшем можно было производить какие-либо действия, необходимо выполнить еще две операции. Во-первых – связать имя файла с именем соответствующей ему переменной. Во-вторых – указать способ работы с файлом – запись в него информации или чтение информации.
    Типизированные.
    Типизированным называется файл, который состоит из однородных элементов, относящихся к одному и тому же типу. Такими элементами могут быть переменные различных типов и массивы. Каждый элемент такого файла имеет свой индекс, подобно элементам массива. Но в отличие от обычного массива, который хранится в оперативной памяти компьютера, и содержимое которого стирается после выхода из системы программирования, типизированный файл может длительное время сохраняться на жестком диске компьютера или на другом носителе. К каждому элементу такого файла возможен как прямой (по индексу элемента), так и последовательный доступ, но недостатком его является то, что в отличие от текстового файла, его нельзя просматривать и редактировать с помощью обычного текстового редактора.
    Для того, чтобы в типизированный файл можно было производить запись или считывать из него информацию, его следует связать с помощью процедуры assign с файловой переменной подобно тому, как мы это уже делали с текстовыми файлами. Например, так: assign (nab,‘D:\inf\nabor’);
    Контрольные вопросы:
    1.
    Что такое алгоритм?
    2.
    Какие алгоритмы бывают?
    3.
    Как можно записать алгоритм?
    ЛЕКЦИЯ 6
    Основные функциональные элементы ЭВМ. Общее устройство и структура вычислительной системы..
    План.
    1.
    Контрольный опрос
    2.
    Основные функциональные элементы ЭВМ;
    3.
    Общее устройство ЭВМ
    4. структура вычислительной системы;
    Понятие термина "Архитектура ЭВМ"Под термином "архитектура ЭВМ" принято понимать совокупность общих принципов организации аппаратно-программных средств и их основных характеристик, определяющих функциональные возможности ЭВМ.
    Архитектура ЭВМ охватывает обширный круг проблем, связанных с созданием комплекса аппаратных и программных средств и учитывающих большое количество определяющих факторов.
    Среди этих факторов самыми главными являются: стоимость, сфера применения, функциональные возможности, удобство в эксплуатации.
    Основным компонентом архитектуры считаются аппаратные средства.
    Архитектуру вычислительного средства необходимо отличать от его структуры.

    Структура вычислительного средства определяет его текущий состав на определенном уровне детализации и описывает связи внутри средства.
    Архитектура же определяет основные правила взаимодействия составных элементов вычислительного средства, описание которых выполняется в той мере, в какой необходимо для формирования правил их взаимодействия. Она устанавливает не все связи, а наиболее необходимые, которые должны быть известны для более грамотного использования применяемого средства.
    Так, пользователю ЭВМ не важно, на каких элементах выполнены электронные схемы и т. д.
    Важно несколько другое: как те или иные структурные особенности ЭВМ связаны с возможностями, предоставляемыми пользователю, какие альтернативные решения реализованы при создании машины, по каким критериям принимались решения, как связаны между собой характеристики устройств, входящих в состав ЭВМ, какое действие они оказывают на общие характеристики компьютера.
    Другими словами, архитектура ЭВМ действительно отражает круг проблем, которые относятся к общему проектированию и построению вычислительных машин и их программного обеспечения. Структура вычислительной системыИз чего состоит любая вычислительная система?
    Во-первых, из того, что в англоязычных странах принято называть словом hardware, или техническое обеспечение: процессор, память, монитор, дисковые устройства и т.д., объединенные магистральным соединением, которое называется шиной.
    Во-вторых, вычислительная система состоит из программного обеспечения (software).
    Некоторые сведения об архитектуре компьютера
    Основными аппаратными компонентами компьютера являются: основная память, центральный процессор и периферийные устройства.
    Для обмена данными между собой эти компоненты соединены группой проводов, называемой магистралью.
    Рис. 1.1.
    Некоторые компоненты компьютера
    Основная память используется для запоминания программ и данных в двоичном виде и организована в виде упорядоченного массива ячеек, каждая из которых имеет уникальный цифровой адрес. Как правило, размер ячейки составляет один байт. Типовые операции над основной памятью – считывание и запись содержимого ячейки с определенным адресом.
    Выполнение различных операций с данными осуществляется изолированной частью компьютера, называемой центральным процессором (ЦП).
    ЦП также имеет ячейки для запоминания информации, называемые регистрами. Их разделяют на регистры общего назначения и специализированные регистры. В современных компьютерах емкость регистра обычно составляет 4–8 байт. Регистры общего назначения используются для временного хранения данных и результатов операций. Для обработки информации обычно организовывается передача данных из ячеек памяти в регистры общего назначения, выполнение операции центральным процессором и передача результатов операции в основную память.
    Специализированные регистры используются для контроля работы процессора.
    Наиболее важными являются: программный счетчик, регистр команд и регистр, содержащий информацию о состоянии программы.
    Программы хранятся в виде последовательности машинных команд, которые должен выполнять центральный процессор. Каждая команда состоит из поля операции и полей операндов, то есть тех данных, над которыми выполняется данная операция. Весь набор машинных команд называется машинным языком.
    Выполнение программы осуществляется следующим образом. Машинная команда, на которую указывает программный счетчик, считывается из памяти и копируется в регистр команд. Здесь она декодируется, после чего исполняется. После выполнения
    команды программный счетчик указывает на следующую команду. Эти действия, называемые машинным циклом, затем повторяются.
    Взаимодействие с периферийными устройствами
    Периферийные устройства предназначены для ввода и вывода информации.
    Каждое устройство обычно имеет в своем составе специализированный компьютер, называемый контроллером или адаптером. Когда контроллер вставляется в разъем на материнской плате, он подключается к шине и получает уникальный номер (адрес). После этого контроллер осуществляет наблюдение за сигналами, идущими по шине, и отвечает на сигналы, адресованные ему.
    Любая операция ввода-вывода предполагает диалог между ЦП и контроллером устройства. Когда процессору встречается команда, связанная с вводом-выводом, входящая в состав какой-либо программы, он выполняет ее, посылая сигналы контроллеру устройства. Это так называемый программируемый ввод-вывод.
    В свою очередь, любые изменения с внешними устройствами имеют следствием передачу сигнала от устройства к ЦП. С точки зрения ЦП это является асинхронным событием и требует его реакции. Для того чтобы обнаружить такое событие, между машинными циклами процессор опрашивает специальный регистр, содержащий информацию о типе устройства, сгенерировавшего сигнал. Если сигнал имеет место, то
    ЦП выполняет специфичную для данного устройства программу, задача которой – отреагировать на это событие надлежащим образом (например, занести символ, введенный с клавиатуры, в специальный буфер).
    Такая программа называется программой обработки прерывания, а само событие прерыванием, поскольку оно нарушает плановую работу процессора. После завершения обработки прерывания процессор возвращается к выполнению программы. Эти действия компьютера называются вводом-выводом с использованием прерываний.
    В современных компьютерах также имеется возможность непосредственного взаимодействия между контроллером и основной памятью, минуя ЦП, – так называемый механизм прямого доступа к памяти.
    Контрольные вопросы:
    1.
    Что такое архитектура ЭВМ?
    2.
    Из чего состоит любая вычислительная система?
    3.
    Назовите основные аппаратные компоненты.
    4.
    Как организована основная память?
    5.
    Регистры ЦП и их назначение.
    6.
    Для чего предназначены периферийные устройства?
    7.
    Что такое адаптер или контроллер?
    ЛЕКЦИЯ 7
    Базовые понятия архитектуры вычислительных систем. Основные принципы построения архитектур вычислительных систем. Принципы Фон Неймана.
    План.
    1. Контрольный опрос
    2. Базовые понятия архитектуры вычислительных систем
    3. Основные принципы построения архитектур вычислительных систем
    4. . Принципы Фон Неймана.
    Архитектура
    компьютера
    закрытого
    типа.
    Компьютерами с сосредоточенной обработкой называются такие вычислительные системы, у которых одно или несколько обрабатывающих устройств (процессоров)
    расположены компактно и используют для обмена информацией внутренние шины передачи данных. Компьютеры 1-го и 2-го поколения имели архитектуру закрытого типа с ограниченным набором внешнего оборудования. Компьютер, выполненный по этой архитектуре, не имел возможности подключения дополнительных устройств, не предусмотренных разработчиком. Укрупненная схема такой компьютерной архитектуры приведена на рис. 1. Оперативная память хранит команды и данные исполняемых программ. АЛУ обеспечивает не только числовую обработку, но и участвует в процессе ввода-вывода информации, осуществляя ее занесение в оперативную память. Канал ввода / вывода представляет собой специализированное устройство, работающее по командам, подаваемым устройством управления. Канал допускает подключение определенного числа внешних устройств. Устройство управления обеспечивает выполнение команд программы и управляет всеми узлами системы.
    Рис. 1.
    Архитектура компьютера закрытого типа
    Компьютеры такой архитектуры эффективны при решении чисто вычислительных задач.
    Они плохо приспособлены для реализации компьютерных технологий, требующих подключения дополнительных внешних устройств и высокой скорости обмена с ними информацией.
    1   2   3   4   5   6   7


    написать администратору сайта