Инструкция это в информатике это

У этого термина существуют и другие значения, см. Инструкция.

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

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

В архитектуре VLIW (very long instruction word — очень длинная машинная команда), которая может включать в себя микрокоды, множество одновеременно исполняемых операций и операнды определяются в одной инструкции.

Размер или длина инструкции может изменяться в довольно широких пределах, от маленьких, размером в 4 бита в некоторых микроконтроллерах, и до инструкций размером в многие сотни бит, как в некоторых VLIW системах. Большинство современных процессоров, используемых в персональных компьютерах, мейнфреймах и суперкомпьютерах, имеют инструкции размером от 16 до 64 бит. В некоторых архитектурах, в основном типа RISC, инструкции имеют фиксированную длину, обычно сравнимую с размером машинного слова этой архитектуры. В остальных архитектурах, инструкции имеют переменную длину, обычно целое множество байт или полуслов.

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

См. также

  • Команда (программирование)
  • Данные (вычислительная техника)
  • Машинный код

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

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

В архитектуре VLIW (very long instruction word — очень длинная машинная команда), которая может включать в себя микрокоды, множество одновременно исполняемых операций и операнды определяются в одной инструкции.

Размер или длина инструкции может изменяться в довольно широких пределах, от маленьких, размером в 4 бита в некоторых микроконтроллерах, и до инструкций размером в многие сотни бит, как в некоторых VLIW системах. Большинство современных процессоров, используемых в персональных компьютерах, мейнфреймах и суперкомпьютерах, имеют инструкции размером от 16 до 64 бит. В некоторых архитектурах, в основном типа RISC, инструкции имеют фиксированную длину, обычно сравнимую с размером машинного слова этой архитектуры. В остальных архитектурах, инструкции имеют переменную длину, обычно целое множество байт или полуслов.

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

См. также

  • Команда (программирование)
  • Данные (вычислительная техника)
  • Машинный код

Зарегистрируйтесь для доступа к 15+ бесплатным курсам по программированию с тренажером

Выражения и инструкции

Введение в программирование

Видео может быть заблокировано из-за расширений браузера. В статье вы найдете решение этой проблемы.

Транскрипт урока

Взгляните на эту простую строчку кода:

const x = 5;

Вы точно знаете, что в ней происходит, верно? Создадим новую константу x, зададим ей значение 5. Ничего особенного тут нет.

Вот другая строчка кода:

const y = getAnswer();

Создадим новую константу y, зададим ей то значение, которое возвращает функция getAnswer. Теперь представьте, что getAnswer — это на самом деле невероятно сложная функция с миллионом строчек кода и потребуется 12 лет для её вычисления.

Насколько отличаются эти строчки? Оказывается, в информатике более важный и полезный вопрос: «насколько они схожи?».

И ответ, конечно — «всё относительно».

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

Но иногда полезно оперировать другими понятиями, на другом уровне. Конечно, бегать и управлять самолётом — это очень разные виды активности, но на определённом уровне они подобны — и та и другая подразумевают передвижение из одной точки в другую.

Эти две строчки подобны, потому что справа от знака равно в обоих случаях находится выражение. Выражение — это фрагмент кода, который превращается в значение. Другими словами — становится значением. Да, знаю, 5 — это уже значение, но для интерпретатора JavaScript это выражение, которое превращается в значение 5. Другое выражение, которое превращается в значение 5 — это, например, 2 + 3.

Вызов функции getAnswer() — это тоже выражение, потому что функция что-то возвращает. Этот вызов будет заменён на значение, которое она возвращает. Другими словами, вызов функции превратится в значение, а поэтому он является выражением.

Не всё в коде становится значением. Так что не всё в коде — это выражение, хотя большая часть его — именно выражения.

JavaScript различает выражения и инструкции. Инструкция — это команда, действие. Помните условие с if, циклы с while и for — всё это — инструкции, потому что они только производят и контролируют действия, но не становятся значениями.

Это что, какие-то мутные технические термины из учебников? Может так показаться, но в реальности очень важно понимать и видеть разницу между выражениями и инструкциями.

Это помогает правильно понимать процесс вычисления и выполнения программы. Посмотрите на пример:

12 + square(7 + 5) + square(square(2));

Это выражение состоит из нескольких подвыражений.

Первое — 12 — выражается в 12. Следующее состоит из множества подвыражений:

  • 7 выражается в 7
  • 5 выражается в 5
  • 7 + 5 выражается в 12
  • square(12) выражается в 144

К этому моменту в процессе JavaScript видит такую картинку:

12 + 144 + square(square(2));

Это еще не конец, остались необработанные выражения. Это будет продолжаться пока всё выражение не превратится в единое значение.

square(square(2)) решается таким способом:

  • 2 выражается в 2
  • square(2) выражается в 4
  • square(4) выражается в 16

Давайте заглянем в мозг интерпретатора снова:

12 + 144 + 16;

Все внутренние выражения решены, так что теперь сложение происходит в два шага:

12 + 144 + 16;
156 + 16;
172;

Теперь решено всё выражение.

Кстати, оператор сложения имеет левую ассоциативность. Это значит, что в случае с составными сложениями процесс пойдёт слева направо, вот почему мы вначале видим 12 + 144, а потом 156 + 16.

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

console.log(const x);   // error!
let b = if (x > 10) { return 100; };    // error!

Зная такие вещи, вы скоро обретёте две важные суперспособности:

  1. Вы будете способны замечать, что большая часть кода, даже та функция из миллиона строк на двенадцать лет, это просто горсть безделушек, которые становятся значениями.
  2. Вы будете способны замечать, что иногда код просто не будет работать, потому что он не имеет смысла в контексте выражений и инструкций.

Выводы

Выражением (expression) является любой корректный блок кода, который возвращает значение.

Ниже 5 это expression, оно выражается в значение 5:

const x = 5;

Ниже getAnswer() — это вызов функции — другое выражение. Этот вызов возвращает значение, то есть этот вызов функции выразится в значение:

const y = getAnswer();

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

12 + square(7 + 5) + square(square(2));

12 + square(12) + square(square(2));
12 + 144 + square(square(2));
12 + 144 + square(4);
12 + 144 + 16;
156 + 16;
172;

JavaScript различает выражения (expressions) и инструкции (statements). Инструкция — это (грубо говоря) команда, действие.

if, while, for, const — примеры инструкций. Они производят или контролируют действия, но не превращаются в значения.


Дополнительные материалы

  1. Выражения / Mozilla Developer Network
  2. Приоритет операторов
  3. Expressions / Mozilla Developer Network
  4. Expressions versus statements in JavaScript

Аватары экспертов Хекслета

Остались вопросы? Задайте их в разделе «Обсуждение»

Вам ответят команда поддержки Хекслета или другие студенты

Открыть доступ

Курсы программирования для новичков и опытных разработчиков. Начните обучение бесплатно


  • 130 курсов, 2000+ часов теории

  • 1000 практических заданий в браузере

  • 360 000 студентов

Наши выпускники работают в компаниях:

Инструкция (информатика)

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

Размер или длина команды варьируется в широких пределах, от всего 4 бит в некоторых микроконтроллерах до нескольких байт в некоторых системах с очень длинными командами слова (VLIW). Большинство современных процессоров, используемых в персональных компьютерах, мейнфреймах и суперкомпьютерах, имеют размер инструкций от 16 до 64 бит. В некоторых архитектурах, особенно в компьютерах с сокращенным набором команд, инструкции имеют фиксированную длину, обычно соответствующую размеру слова этой архитектуры.

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

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

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

Есть еще одно более общее определение «инструкции», относящееся не только к наборуинструкций процессора: Инструкция» может быть любым представлением элемента исполняемой компьютерной программы.

Вопросы и ответы

В: Что такое инструкция по информатике?

О: Инструкция в информатике — это одна операция процессора, определяемая набором инструкций процессора.

В: Какой длины могут быть инструкции?

О: Размер или длина инструкции варьируется в широких пределах: от 4 бит в некоторых микроконтроллерах до нескольких байт в некоторых системах с очень длинным словом инструкции (VLIW). Большинство современных процессоров, используемых в персональных компьютерах, мейнфреймах и суперкомпьютерах, имеют размер инструкции от 16 до 64 бит. В некоторых архитектурах, особенно в Reduced Instruction Set Computers (RISC), инструкции имеют фиксированную длину, обычно соответствующую размеру слова этой архитектуры.

В: Что включает в себя инструкция?

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

В: Как обычно указываются инструкции?

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

В: Есть ли другое определение для «инструкции»?

О: Да, существует другое, более общее определение для «инструкции», связанное не только с набором инструкций процессора, которое представляет собой любое представление элемента исполняемой компьютерной программы.

В: Все ли инструкции имеют одинаковый размер?

О: Нет, размер или длина инструкций сильно варьируется в зависимости от типа используемого процессора, начиная от 4-бит до нескольких байт для VLIW систем, при этом большинство современных процессоров имеют размер от 16 до 64 бит, в то время как RISC архитектуры обычно имеют инструкции фиксированной длины, соответствующей размеру слова этой архитектуры.

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

поделиться знаниями или
запомнить страничку

  • Все категории
  • экономические
    43,679
  • гуманитарные
    33,657
  • юридические
    17,917
  • школьный раздел
    612,462
  • разное
    16,911

Популярное на сайте:

Как быстро выучить стихотворение наизусть? Запоминание стихов является стандартным заданием во многих школах. 

Как научится читать по диагонали? Скорость чтения зависит от скорости восприятия каждого отдельного слова в тексте. 

Как быстро и эффективно исправить почерк?  Люди часто предполагают, что каллиграфия и почерк являются синонимами, но это не так.

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

Понравилась статья? Поделить с друзьями:
  • Инструкция это алгоритм результаты выполнения которого неизвестен
  • Инструкция электроплита kaiser elegance инструкция
  • Инструкция эссенциале форте в капсулах как принимать
  • Инструкция электропечь dexp vn 3000 ea
  • Инструкция эринит в таблетках по применению взрослым