Що таке набір інструкцій?

Будь-який ЦП з самого початку розроблено для підтримки певного набору інструкцій. Набір інструкцій — це набір жорстко закодованих операцій, які ЦП може виконувати. Такими операціями можуть бути, наприклад, додавання двох чисел, перехід до іншої частини програми або порівняння двох значень. Кожна операція, яку може виконати комп’ютер, унікально представлена ​​кодом операції.

Коди операцій

Під час виконання програми ЦП використовує програмний лічильник, щоб відстежувати, яку інструкцію потрібно виконати наступною. Коли інструкція витягується, програмний лічильник збільшується на довжину інструкції, щоб він вказував на початок наступної інструкції. Кожна інструкція складається з коду операції. Залежно від інструкції, вона може містити або не містити операнди. Операнд може бути постійним значенням або покажчиком на розташування значення в регістрі процесора або в системній оперативній пам'яті.

Після отримання повної інструкції її потрібно декодувати. Це процес, у якому ЦП розділяє код операції та будь-які операнди. Розкодований код операції використовується для ввімкнення або вимкнення певних електричних шляхів у ЦП, що призведе до правильної роботи.

Після того, як інструкція була декодована, вона буде виконана. Точна поведінка ЦП залежатиме від операції. Операція додавання підсумовує два значення. Операція переходу обчислить, куди в програмі потрібно перейти. Операція порівняння порівнює два значення. Операція NOP буде простоювати, оскільки NOP означає відсутність операції.

Тоді більшість інструкцій виведе результат операції. Цей вихід може надходити в регістри процесора і, якщо необхідно, в оперативну пам'ять системи. Для виконання кожної з цих операцій потрібен один такт.

Незаконні коди операцій

Кожна архітектура ЦП має свій окремий список кодів операцій, опублікований виробником. Значення цих кодів операцій не обов’язково є однаковими для різних платформ, тому програмне забезпечення потрібно скомпілювати для різних архітектур. У деяких випадках виробник також включає незадокументовані коди операцій. Вони називаються «незаконними кодами операцій». Незаконні коди операцій, незважаючи на те, що вони не задокументовані, виконуватимуть ту саму функцію кожного разу, коли їх викликають. Проте як недокументовані та нестандартні функції, оновлення архітектури ЦП можуть просто видалити їх.

Деякі перші комп’ютерні ігри на Apple II покладалися на певні незаконні коди операцій. Потім у них виникли проблеми з продуктивністю та стабільністю пізнішої версії процесора Apple IIc, оскільки IIc видалив незаконні коди операцій, які вимагали ігри. Незаконні коди операцій також використовувалися в колах із захисту авторського права як метод безпеки через невідомість у боротьбі з піратами, які зламували їхній вміст. Деякі незаконні коди операцій призначені просто як засоби налагодження та обробки помилок.

Набір інструкцій x86 містить велику кількість недокументованих незаконних кодів операцій. Цікаво, що деякі з них є спільними між процесорами Intel і AMD, що вказує на те, що обидві компанії публічно знають про їхню мету, хоча вони недокументовані.

Компілятори та збірка

Більшість програм написані на мовах високого рівня. Їх відносно легко читати, часто використовують англійські слова або скорочення, щоб мінімізувати криві навчання. Щоб комп’ютер міг виконувати ці програми, їх потрібно скомпілювати. Компілятор, по суті, є транслятором. Він бере код високого рівня та перетворює його на комп’ютерний код, інструкції, які ЦП може зрозуміти.

У деяких мовах також можливо запустити нескомпільований код через попередньо скомпільовану програму, яка генерує машинний код на льоту. Ассамблея — це мова програмування низького рівня, яка використовує скорочення, щоб дозволити розробникам безпосередньо бачити та контролювати виконувані операції. NOP є прикладом скорочення складання.

Висновок

Набір інструкцій — це список офіційних функцій, які може виконувати архітектура ЦП. Це список операцій, які можна виконати. Ці операції жорстко закодовані в ЦП і викликаються за допомогою відповідних кодів операцій.

Програмне забезпечення зазвичай використовує компілятор для перекладу з коду високого рівня, який читає людина, у машинний код, який може читати ЦП. Іноді архітектура процесора може мати незадокументовані коди операцій, які називаються незаконними кодами операцій. Технічно неприпустимі коди операцій є частиною набору інструкцій. Однак вони можуть бути недоступні в майбутніх ітераціях платформи. Не забудьте залишити свої думки в коментарях нижче.


Leave a Comment

Все про iOS 26

Все про iOS 26

Apple представила iOS 26 – велике оновлення з абсолютно новим дизайном з матового скла, розумнішими можливостями та покращеннями звичних програм.

Найкращі ноутбуки для студентів у 2025 році

Найкращі ноутбуки для студентів у 2025 році

Студентам потрібен певний тип ноутбука для навчання. Він має бути не лише достатньо потужним для успішного навчання за обраною спеціальністю, але й компактним і легким, щоб носити його з собою цілий день.

Як відновити доступ до жорсткого диска, виправити помилку неможливості відкрити жорсткий диск

Як відновити доступ до жорсткого диска, виправити помилку неможливості відкрити жорсткий диск

У цій статті ми розповімо вам, як відновити доступ до жорсткого диска, якщо він вийшов з ладу. Давайте продовжимо!

Як використовувати функції «Усвідомлення розмов» та «Прослуховування в реальному часі» на AirPods

Як використовувати функції «Усвідомлення розмов» та «Прослуховування в реальному часі» на AirPods

На перший погляд, AirPods виглядають як будь-які інші справжні бездротові навушники. Але все змінилося, коли було виявлено кілька маловідомих функцій.

Як додати принтер до Windows 10

Як додати принтер до Windows 10

Додавання принтера до Windows 10 просте, хоча процес для дротових пристроїв відрізнятиметься від процесу для бездротових пристроїв.

Як перевірити оперативну память та перевірити помилки оперативної памяті на вашому компютері з найвищим рівнем точності

Як перевірити оперативну память та перевірити помилки оперативної памяті на вашому компютері з найвищим рівнем точності

Як відомо, оперативна пам'ять є дуже важливою апаратною частиною комп'ютера, яка виконує функцію пам'яті для обробки даних і є фактором, що визначає швидкість роботи ноутбука або ПК. У статті нижче WebTech360 ознайомить вас із деякими способами перевірки помилок оперативної пам'яті за допомогою програмного забезпечення у Windows.

Виправте, що AirPods не працюють із Zoom на Mac

Виправте, що AirPods не працюють із Zoom на Mac

Дізнайтеся, як виправити проблему підключення AirPods до Zoom на Mac за допомогою простих рішення.

Як клонувати жорсткий диск

Як клонувати жорсткий диск

У сучасну цифрову епоху, коли дані є цінним активом, клонування жорсткого диска в Windows може бути вирішальним процесом для багатьох. Цей вичерпний посібник

Як виправити помилку завантаження драйвера WUDFRd у Windows 10?

Як виправити помилку завантаження драйвера WUDFRd у Windows 10?

Ви стикаєтеся з повідомленням про помилку під час завантаження комп’ютера, у якому йдеться про те, що драйвер WUDFRd не вдалося завантажити на ваш комп’ютер?

Як виправити код помилки NVIDIA GeForce Experience 0x0003

Як виправити код помилки NVIDIA GeForce Experience 0x0003

Ви відчуваєте код помилки NVIDIA GeForce 0x0003 на робочому столі? Якщо так, прочитайте блог, щоб дізнатися, як швидко та легко виправити цю помилку.