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

Обновлено: 07.07.2024

• Классификация команд по различным
признакам
• Структура команд ЭВМ
• Команды передачи данных
• Команды обработки данных
• Команды передачи управления
• Команды для работы с подпрограммами.
Стеки.
• Прочие команды ЭВМ.

2. Система команд ЭВМ

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

Классификация команд ЭВМ
По
функциональному
назначению
Команды
передачи
данных
Команды
обработки
данных
Команды
передачи
управления
Дополнительные
(прочие)
По
количеству
адресов
Нульадресные
или
безадресные
С одним
адресом
С двумя
адресами
С тремя
адресами
По способу
кодирования
операции
По длине
С фиксированной
длиной
кода
операции
С
переменной
длиной
кода
операции
По способу
адресации
Один байт
(слово)
Два байта
(слова)
Три байта
(слова)

Структура команды ЭВМ
Адресная часть (коды адресов ячеек
памяти)
Операционная
часть (код
операции)

Код
операции
а1
а2
а3
- Трехадресная команда
а1,а2 – адреса ячеек (регистров), где находятся числа, участвующие в
операции (операнды)
а3 – адрес ячейки оперативной памяти, куда нужно поместить
результат
Код
операции
а1
а2
- Двухадресная команда
Результат записывается в ячейку а2
Код
операции
а1
- Одноадресная команда
а1 – адрес ячейки, где хранится число участвующее в операции или
адрес ячейки, где записывается результат
Код
операции
- Нуль адресная команда
Все операнды в регистре ЦП

6. Команды передачи данных

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

7. Команды обработки данных

• Данную группу команд с точки зрения
выполняемых над данными операций
можно подразделить на арифметические
(сложить, вычесть, умножить, сравнить),
логические (операции И, ИЛИ, НЕ и т.д.) и
команды сдвига.
• Команды этого типа могут иметь один или
два операнда. Операнды могут храниться
к регистрах центрального процессора, в
памяти или в самой команде.

• Результат операции формируется в
регистре-приемнике или в
специализированном регистреаккумуляторе.
• Команды данной группы формируют
также признаки результатов,
устанавливаемые в регистре флагов
процессора: перенос из старшего
разряда, переполнение, нулевой
результат и др.

9. Подробнее о команде сравнения

• Обычно для сравнения двух чисел процессор
выполняет операцию вычитания. По результату
вычитания
устанавливаются
флаги
во
флаговом регистре. Очевидно, что если
сравниваемые
числа
равны,
результат
вычитания будет нулевым и в регистре
установится флаг нулевого результата.
• Если первое из сравниваемых чисел больше —
результат вычитания будет отрицательным и
установится флаг отрицательного результата.
• Результат вычитания не сохраняется в памяти,
поскольку по состоянию флагового регистра
можно судить о результатах сравнения чисел.

10. Команды передачи управления

• Они имеют важное значение, так как
используются для изменения естественного
порядка следования команд и организации
циклических участков в программах.
• Простейшей командой передачи управления
является команда безусловного перехода
JMP <адрес>, которая загружает адрес
перехода, указанный в команде, в программный
счетчик.
• Команды условного перехода проверяют
указанное в команде условие и модифицируют
программный счетчик, если условие истинно.

11. Пример команды условного перехода

• Оператор
IF (A>B) then go to L
некоторого языка высокого уровня может быть
реализован двумя командами ЭВМ:
• СРАВНИТЬ А и В
• ПЕРЕЙТИ ЕСЛИ БОЛЬШЕ К АДРЕСУ L
• Если А>В, то результат вычитания будет
положителен и соответственно флаг знака во
флаговом регистре не установится.
• Вторая команда (условный переход) проверяет
состояние флага знака и, если он не установлен,
модифицирует программный счетчик так,
чтобы его значение указывало на адрес L.

12. Организация подпрограмм

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

Инициализация
Выборка команды
Увеличение программного счетчика
Дешифрация и выполнение команды
Нет
Команда «Остановка
процессора»
Да

14. Где надо хранить адрес возврата?

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

15. Понятие стека

• Большинство ЭВМ используют аппаратно
поддерживаемую структуру данных,
называемую стеком. Стек — это структура
данных, организованная по принципу:
последним вошел — первым вышел, т.е.
последние записанные в стек данные
извлекаются из него первыми.
• В переводе с англ. stack — стопка.
Аналогом стека может служить стопка
тарелок. Положить тарелку в стопку можно
только сверху, извлечь без проблем опятьтаки только верхнюю тарелку.

16. Организация стека

1. В ЭВМ для организации стека выделяется
область оперативной памяти, а для ее
адресации и доступа к стеку используется
регистр— указатель стека.
2. Регистр -указатель стека хранит
адрес ячейки памяти, содержащей
последнее помещенное в стек значение.
3. При записи числа в стек указатель стека
модифицируется так, чтобы он указывал
на следующую свободную ячейку ОП, и в
нее записываются данные.

4. При извлечении из стека данные
считываются из той ячейки ОП, на
которую показывает указатель, затем
указатель стека модифицируется так,
чтобы указывать на предпоследнее
сохраненное в стеке значение.
5. Обычно стеки растут в сторону
уменьшения адресов, т.е. при записи
числа указатель стека уменьшается,
при извлечении числа из стека —
увеличивается.

Команды для работы с подпрограммами. Стеки
Стек = ячейки ОП + регистр - указатель стека (АЛУ ЦП)
Регистр - указатель стека хранит адрес ячейки ОП, в которой
содержится последний помещенный в стек адрес возврата
Структура данных стека на примере
А) Начальное состояние: стек пустой
Ячейки ОП
Адреса
ячеек
1000
1000
Указатель стека
998
996
Б) В стек записаны два адреса возврата: 1234 и 5678
1234
1000
Указатель стека
5678
998
Запись
адресов
возврата
996
996
В) Из стека извлечен один адрес, последний
Указатель стека
1234
1000
998
996
Считывание
1000

19. Работа команды вызова подпрограмм САLL <адрес>

Работа команды вызова подпрограмм
САLL <адрес>
1. Когда процессор считывает из памяти команду САLL
<адрес>, программный счетчик увеличивается и
показывает на команду, следующую за командой
САLL. То есть программный счетчик теперь содержит
адрес возврата, с которого должно продолжиться
выполнение основной программы после окончания
работы подпрограммы.
2. При выполнении обращения к подпрограмме
процессор сохраняет содержимое программного
счетчика в стеке, точнее, в его ячейках ОП.
3. Далее в программный счетчик загружается адрес
команды, с которого начинается подпрограмма.
Процессор приступает к выполнению подпрограммы.

20. Работа команды возврата RETURN

1. Для возврата из подпрограммы в основную
программу служат команды возврата RETURN.
2. Команда возврата из подпрограммы извлекает из
стека сохраненный в нем адрес возврата помещают
его в программный счетчик.
3. Процессор приступает к выполнению основной
программы.
4. Если имели место несколько вложенных вызовов
подпрограмм, то возврат произойдет по адресу
возврата, сохраненному после последнего вызова,
(так
как
для
хранения
адресов
возврата
используется стек и последний сохраненный адрес
возврата будет вызван первым).

21. Прочие команды ЭВМ

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


Большое изумление у человека, не знакомого с вычислительной техникой вызывает тот факт, что все разнообразие решаемых на ЭВМ задач реализуется с помощью небольшого набора очень простых ко­манд. Система команд у типичной ЭВМ включает в себя всего 60— 150 базовых команд. Все команды в основном служат для выполне­ния очень простых действий, таких, как прочитать, запомнить, сло­жить, сдвинуть, сравнить и т.д.

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

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

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

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

Результат операции формируется в регистре-приемнике или в спе­циализированном регистре-аккумуляторе. Команды данной группы сформируют признаки результатов, устанавливаемые в регистре фла­гов процессора: перенос из старшего разряда, переполнение, нулевой результат и др. К арифметическим командам относят также и коман­ды сравнения. Обычно для сравнения двух чисел процессор выполня­ет операцию вычитания. По результату вычитания устанавливаются флаги во флаговом регистре процессора. Очевидно, что если сравни­ваемые величины равны, результат вычитания будет нулевым и во флаговом регистре установится флаг нулевого результата. Если пер­вая из сравниваемых величин больше — результат вычитания будет отрицательным и установится флаг отрицательного результата и т.д. Результат вычитания не сохраняется в памяти, по состоянию флаго­вого регистра можно судить о результатах сравнения двух величин. Многие процессоры имеют команды сравнения операнда с нулем. В некоторых процессорах имеются команды проверки или установки состояния отдельных битов в операнде.

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

Это может звучать как глупый вопрос, но мне действительно интересно узнать, как компьютер знает, что ? Кроме того, как компьютер узнает, что порядок целых чисел равен и алфавит A, B, C, D, . Это где-то хранится в оборудовании или операционная система предоставляет такую ​​информацию? 1 , 2 , 3 , 4 , 5 , … 1 < 2 1 , 2 , 3 , 4 , 5 , .

@AndrejBauer: На самом деле, он не вошел в систему с тех пор, как задал вопрос. Может быть, он теперь знает все, что ему нужно.

Сначала ваши целые числа преобразуются в двоичные числа. Например, целое число 2 преобразуется в 0010.

В оборудовании компаратора используются некоторые вентили (AND, OR, NAND, NOR, XOR и т. Д.). Эти ворота принимают двоичные входы и дают результат в двоичном виде. Вывод можно увидеть из таблицы истинности.

Здесь 0 & 1 электронные напряжения для ворот.
1 - Представляет некоторое пороговое напряжение, которое указывает на некоторое положительное напряжение.
0 - Представляет напряжение ниже порога.

Например, предположим, что компаратор работает на 5 вольт (это рассмотрение для объяснения) тогда:
Напряжение более 3 вольт можно рассматривать как binary-1 .
Напряжение ниже 3 вольт считается binary-0

Если логический элемент получает один вход как 3,5 вольт, а другой вход как 2 вольт, то он считает, что он принимает один вход как двоичный 1 и другой вход как двоичный 0.

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

Работа двухразрядного цифрового компаратора может быть выражена в виде таблицы истинности:

Примеры: рассмотрим два 4-битных двоичных числа A и B, такие, что


здесь каждый нижний индекс представляет одну из цифр в числах.

равенство

Двоичные числа A и B будут равны, если все пары значащих цифр обоих чисел равны, т
. Е. , ,

Поскольку числа являются двоичными, цифры равны 0 или 1, а логическая функция для равенства любых двух цифр и> может быть выражена как

1, только если и равны.

Для равенства A и B все переменные (для i = 0,1,2,3) должны быть равны 1. Таким образом, условие качества A и B может быть реализовано с использованием операции AND в качестве

двоичной переменной (A = B) равен 1, только если все пары цифр двух чисел равны.

Неравенство

введите описание изображения здесь

Чтобы вручную определить большее из двух двоичных чисел, мы проверяем относительные величины пар значащих цифр, начиная с самого старшего бита, постепенно продвигаясь к младшим значащим битам, пока не будет найдено неравенство. Когда найдено неравенство, если соответствующий бит A равен 1, а бит B равен 0, то мы заключаем, что A> B. Это последовательное сравнение может быть логически выражено как:


В 1:21 поступил вопрос в раздел Информатика, который вызвал затруднения у обучающегося.

Вопрос вызвавший трудности

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

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

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

НЕСКОЛЬКО СЛОВ ОБ АВТОРЕ ЭТОГО ОТВЕТА:


Работы, которые я готовлю для студентов, преподаватели всегда оценивают на отлично. Я занимаюсь написанием студенческих работ уже более 4-х лет. За это время, мне еще ни разу не возвращали выполненную работу на доработку! Если вы желаете заказать у меня помощь оставьте заявку на этом сайте. Ознакомиться с отзывами моих клиентов можно на этой странице.

Соколова Кармелитта Лаврентьевна - автор студенческих работ, заработанная сумма за прошлый месяц 52 123 рублей. Её работа началась с того, что она просто откликнулась на эту вакансию

ПОМОГАЕМ УЧИТЬСЯ НА ОТЛИЧНО!

Выполняем ученические работы любой сложности на заказ. Гарантируем низкие цены и высокое качество.

Деятельность компании в цифрах:

Зачтено оказывает услуги помощи студентам с 1999 года. За все время деятельности мы выполнили более 400 тысяч работ. Написанные нами работы все были успешно защищены и сданы. К настоящему моменту наши офисы работают в 40 городах.

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

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

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

Читайте также: