Положительные целые числа




Четвертое поколение ЭВМ

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

Однако, есть и другое мнение - многие полагают, что достижения периода 1975-1985 г.г. не настолько велики, чтобы считать его равноправным поколением. Сторонники такой точки зрения называют это десятилетие принадлежащим "третьему-с половиной" поколению компьютеров. И только с 1985г., когда появились супербольшие интегральные схемы (СБИС. В кристалле такой схемы может размещаться до 10 млн. элементов.), следует отсчитывать годы жизни собственно четвертого поколения, здравствующего и по сей день.

Развитие ЭВМ 4-го поколения пошло по 2 направлениям:

1-ое направление — создание суперЭВМ - комплексов многопроцессорных машин. Быстродействие таких машин достигает нескольких миллиардов операций в секунду. Они способны обрабатывать огромные массивы информации. Сюда входят комплексы ILLIAS-4, CRAY, CYBER, «Эльбрус-1», «Эльбрус-2» и др. "Эльбрус-2" эксплуатировались в Центре управления космическими полетами, в ядерных исследовательских центрах. Наконец, именно комплексы "Эльбрус-2" с 1991 года использовались в системе противоракетной обороны и на других военных объектах.

2-ое направление — дальнейшее развитие на базе БИС и СБИС микро-ЭВМ и персональных ЭВМ (ПЭВМ). Первыми представителями этих машин являются Apple, IBM - PC (XT, AT, PS /2), «Искра», «Электроника», «Мазовия», «Агат», «ЕС-1840», «ЕС-1841» и др.

Начиная с этого поколения ЭВМ стали называть компьютерами.

1983-1984 гг. – появились первые 32-разрядные микропроцессоры на мировом рынке, но их широкое использование в высокопроизводительных ПК началось с 1985 г. после выпуска фирмами Intel и Motorola микропроцессоров 80386 и М68020 соответственно. Эти БИС открыли новое микропроцессорное поколение, реализующее обработку данных на уровне "больших" ЭВМ.

В 1989 г. был начат выпуск более мощного МП 80486 с быстродействием более 50 млн. операций в секунду.

В марте 1993 г. фирма Intel продолжает ряд 80х86 выпуском микропроцессора Р5 "Pentium" с 64-разрядной архитектурой.

Потом были "Pentium 2", "Pentium 3". Сегодня самым популярным МП является "Pentium 4".

Тактовые частоты современных ПК превышают 3 ГГц, объемы оперативной памяти до 4 ГБ. Емкость накопителей на жестких дисках выросла до 500 ГБ.

Широкое распространение получили сегодня переносные ПК - noutebook, карманные ПК (КПК) и мобильные ПК – смартфоны, объединяющие функции ПК и телефона.

Пятое поколение ЭВМ

ЭВМ пятого поколения — это ЭВМ будущего. Предполагается, что их элементной базой будут служить не СБИС, а созданные на их базе устройства с элементами искусственного интеллекта. Для увеличения памяти и быстродействия будут использоваться достижения оптоэлектроники и биопроцессоры.

Программа разработки, так называемого, пятого поколения ЭВМ была принята в Японии в 1982 г. Предполагалось, что к 1991 г. будут созданы принципиально новые компьютеры, ориентированные на решение задач искусственного интеллекта.

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

На ЭВМ пятого поколения ставятся совершенно другие задачи, нежели при разработки всех прежних ЭВМ. Если перед разработчиками ЭВМ с I по IV поколений стояли такие задачи, как увеличение производительности в области числовых расчётов, достижение большой ёмкости памяти, то основной задачей разработчиков ЭВМ V поколения является создание искусственного интеллекта машины (возможность делать логические выводы из представленных фактов), развитие "интеллектуализации" компьютеров - устранения барьера между человеком и компьютером.

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

 

2. Основные элементы архитектуры классической ЭВМ (архитектура фон Неймана).

Архитектура фон Неймана — широко известный принцип совместного хранения команд и данных в памяти компьютера. Вычислительные системы такого рода часто обозначают термином «машина фон Неймана», однако соответствие этих понятий не всегда однозначно. В общем случае, когда говорят об архитектуре фон Неймана, подразумевают принцип хранения данных и инструкций в одной памяти.

Основы учения об архитектуре вычислительных машин заложил фон Нейман в 1944 году, когда подключился к созданию первого в мире лампового компьютера ЭНИАК. В процессе работы над ЭНИАКом в Институте Мура в Пенсильванском Университете во время многочисленных дискуссий фон Неймана с его коллегами Джоном Уильямом Мокли, Джоном Экертом, Германом Голдстайном и Артуром Бёрксом, возникла идея более совершенной машины под названием EDVAC. Исследовательская работа над EDVAC продолжалась параллельно с конструированием ЭНИАКа.

В марте 1945 года принципы логической архитектуры были оформлены в документе, который назывался «Первый проект отчёта о EDVAC» — отчет для Баллистической Лаборатории Армии США, на чьи деньги осуществлялась постройка ЭНИАКа и разработка EDVACа. Отчет, поскольку он являлся всего лишь наброском, не предназначался для публикации, а только для распространения внутри группы, однако Герман Голдстайн — куратор проекта со стороны Армии США — размножил эту научную работу и разослал её широкому кругу ученых для ознакомления. Так как на первой странице документа стояло только имя фон Неймана[1], у читавших документ сложилось ложное впечатление, что автором всех идей, изложенных в работе, является именно он. Документ давал достаточно информации для того, чтобы читавшие его могли построить свои компьютеры, подобные EDVACу на тех же принципах и с той же архитектурой, которая в результате стала называться «архитектурой фон Неймана».

После завершения Второй Мировой войны и окончания работ над ЭНИАКом в феврале 1946 года команда инженеров и ученых распалась, Джон Мокли, Джон Экерт решили обратиться в бизнес и создавать компьютеры на коммерческой основе. Фон Нейман, Голдстайн и Бёркс перешли в Институт перспективных исследований, где решили создать свой компьютер «IAS-машина», подобный EDVACу, и использовать его для научно-исследовательской работы. В июне 1946 года они[2][3] изложили свои принципы построения вычислительных машин в ставшей классической статье «Предварительное рассмотрение логической конструкции электронно-вычислительного устройства»[4][5][6]. С тех пор прошло более полувека, но выдвинутые в ней положения сохраняют свою актуальность и сегодня. В статье убедительно обосновывается использование двоичной системы для представления чисел, а ведь ранее все вычислительные машины хранили обрабатываемые числа в десятичном виде. Авторы продемонстрировали преимущества двоичной системы для технической реализации, удобство и простоту выполнения в ней арифметических и логических операций. В дальнейшем ЭВМ стали обрабатывать и нечисловые виды информации — текстовую, графическую, звуковую и другие, но двоичное кодирование данных по-прежнему составляет информационную основу любого современного компьютера.

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

Ещё одной революционной идеей, значение которой трудно переоценить, является принцип «хранимой программы». Первоначально программа задавалась путём установки перемычек на специальной коммутационной панели. Это было весьма трудоемким занятием: например, для изменения программы машины ЭНИАК требовалось несколько дней, в то время как собственно расчет не мог продолжаться более нескольких минут — выходили из строя лампы, которых было огромное количество. Однако программа может также храниться в виде набора нулей и единиц, причём в той же самой памяти, что и обрабатываемые ею числа. Отсутствие принципиальной разницы между программой и данными дало возможность ЭВМ самой формировать для себя программу в соответствии с результатами вычислений.

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

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

Принципы фон Неймана

Принцип однородности памяти

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

Принцип адресности

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

Принцип программного управления

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

Принцип двоичного кодирования

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

3. Основные компоненты центрального процессора.

Главные функциональные компоненты процессора (рис. 6.1) описаны ниже на примере процессора семейства Intel Pentium.

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

- Модуль предсказания перехода (Branch Predictor). Модуль определяет изменение последовательности выполнения команд после перехода, для того чтобы переслать эти команды заранее в декодер команд.

- Сопроцессор. Модуль для выполнения операций с нецелыми числами (числами с плавающей точкой).

- Кэш-память первого уровня (LI). CPU Pentium имеет два модуля кэшпамяти (L1) по 8 Кбайт каждый: один для команд, а другой для данных. Время доступа к данным модулям намного быстрее, чем к внешней кэшпамяти второго уровня (L2).

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

 

4. Последовательное выполнение команд, такт работы ЭВМ, команда, микрокоманда.

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

Для того чтобы процессор знал, какую команду нужно выполнять в определённый момент, существует счётчик команд – специальный регистр, в котором хранится адрес команды, которая должна быть выполнена после выполнения текущей команды. То есть при запуске программы в этом регистре хранится адрес первой команды. В процессорах Intel в качестве счётчика команд (его ещё называют указатель команды) используется регистр EIP (или IP в 16-разрядных программах).

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

Цикл выполнения команды – это последовательность действий, которая совершается процессором при выполнении одной машинной команды. При выполнении каждой машинной команды процессор должен выполнить как минимум три действия: выборку, декодирование и выполнение. Если в команде используется операнд, расположенный в оперативной памяти, то процессору придётся выполнить ещё две операции: выборку операнда из памяти и запись результата в память. Ниже описаны эти пять операций.

  • Выборка команды. Блок управления извлекает команду из памяти (из очереди команд), копирует её во внутреннюю память процессора и увеличивает значение счётчика команд на длину этой команды (разные команды могут иметь разный размер).
  • Декодирование команды. Блок управления определяет тип выполняемой команды, пересылает указанные в ней операнды в АЛУ и генерирует электрические сигналы управления АЛУ, которые соответствуют типу выполняемой операции.
  • Выборка операндов. Если в команде используется операнд, расположенный в оперативной памяти, то блок управления начинает операцию по его выборке из памяти.
  • Выполнение команды. АЛУ выполняет указанную в команде операцию, сохраняет полученный результат в заданном месте и обновляет состояние флагов, по значению которых программа может судить о результате выполнения команды.
  • Запись результата в память. Если результат выполнения команды должен быть сохранён в памяти, блок управления начинает операцию сохранения данных в памяти.

· Цикл процессора — период времени, за который осуществляется выполнение команды исходной программы в машинном виде; состоит из нескольких тактов.

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

· Такт работы процессора — промежуток времени между соседними импульсами (tick of the internal clock) генератора тактовых импульсов, частота которых есть тактовая частота процессора.

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

Базовыми командами являются, как правило, следующие:

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

 

· Команда – последовательность микрокоманд.

 

 

5. Аналоговые и цифровые сигналы.

 

Аналоговый сигнал

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

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

Аналоговые сигналы описываются непрерывными функциями времени, поэтому аналоговый сигнал иногда называют непрерывным сигналом. Аналоговым сигналам противопоставляются дискретные (квантованные, цифровые). Примеры непрерывных пространств и соответствующих физических величин:

· прямая: электрическое напряжение

· окружность: положение ротора, колеса, шестерни, стрелки аналоговых часов, или фаза несущего сигнала

· отрезок: положение поршня, рычага управления, жидкостного термометра или электрический сигнал, ограниченный по амплитуде различные многомерные пространства: цвет, квадратурно-модулированный сигнал.

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

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

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

Применение:

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

Цифровой сигнал

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

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

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

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

 

Для чисел имеется три числовых формата:

  • двоичный с фиксированной точкой;
  • двоичный с плавающей запятой;
  • двоично-кодированный десятичный (BCD).

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

В двоично-кодированном десятичном формате каждая десятичная цифра представляется в виде 4 битного двоичного эквивалента. Существуют две основные разновидности этого формата: упакованный и неупакованный. В упакованном BCD-формате цепочка десятичных цифр хранится в виде последовательности 4-битных групп. Например, число 3904 представляется в виде двоичного числа 0011 1001 0000 0100. В неупакованном BCD-формате каждая десятичная цифра находится в младшей тетраде 8-битной группы (байте), а содержимое старшей тетрады определяется используемой в данной ЭВМ системой кодирования, и в данном случае несущественно. То же число 3904 в неупакованном формате будет занимать 4 байта и иметь вид:

xxxx0011 xxxx1001 xxxx0000 xxxx0100.

Числа с плавающей запятой обрабатываются на специальном сопроцессоре (FPU - floating point unit), который, начиная с МП I486, входит в состав БИС микропроцессора. Данные в нем хранятся в 80-разрядных регистрах. Управляя настройками сопроцессора, можно изменять диапазон и точность представления данных этого типа (таблица 14.1).

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

Регистр — устройство для записи, хранения и считывания n -разрядных двоичных данных и выполнения других операций над ними.

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

7. Двоичная арифметика.
Это знать надо! Не первый курс уже.

8. Представление в ЭВМ отрицательных чисел (прямой, обратный и дополнительный коды).

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

Для представления чисел со знаком в ЭВМ применяют прямой, обратный и дополнительный коды.

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

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

Для представления знаковых целых чисел используются три способа:

1) прямой код;

2) обратный код;

3) дополнительный код.

Все три способа используют самый левый (старший) разряд битового набора длины n для кодирования знака числа: знак «плюс» кодируется нулем, а «минус» – единицей. Остальные n –1 разрядов (называемые мантиссой или цифровой частью) используются для представления абсолютной величины числа.

Запись числа αnαn –1αiα 1 α 0α–1αm, где αn ∈{0,1} – знак числа, при всех прочих равных условиях имеет разные количественные эквиваленты в зависимости от того в каком коде, прямом, обратном или дополнительном, оно записано.

Положительные целые числа

Положительные числа в прямом, обратном и дополнительном кодах изображаются одинаково – цифровая часть содержит двоичную запись числа (значащие разряды αn –1÷ αm кодируют количественный эквивалент числа), в знаковом разряде содержится 0. Например, для n = 8:

110=12 12710=11111112

Диапазон представимых чисел: 0…2 n –1–1.



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2019-06-16 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: