Content deleted Content added
They're both computer hardware-related terms with identical acronyms where both the last letters stand for "architecture". Maybe you or I wouldn't, but I can see how someone who faintly remembers the old bus standard searching "ISA computer" on Google might reach this article when they meant to go to the other. A hatnote exists at Industry Standard Architecture for a similar reason |
No edit summary Tags: Reverted Mobile edit Mobile web edit |
||
Line 4:
{{Machine code}}
In [[computer science]], an '''instruction set architecture''' ('''ISA''') is an [[Conceptual model|abstract model]] that generally defines how [[software]] controls the [[Central processing unit|CPU]] in a computer or a family of computers.<ref>{{Cite web |title=GLOSSARY: Instruction Set Architecture (ISA) |url=https://www.arm.com/glossary/isa |archive-url=https://web.archive.org/web/20231111175250/https://www.arm.com/glossary/isa |archive-date=2023-11-11 |access-date=2024-02-03 |website=arm.com}}</ref> A device or program that executes instructions described by that
In general, an ISA defines the supported [[Machine code|instructions]], [[data type]]s, [[Register (computer)|registers]], the hardware support for managing [[Computer memory|main memory]],{{Clarify|date=April 2024|reason=See "What does "Hardware support for managing main memory" refer to?" on the talk page.]]}} fundamental features (such as the [[memory consistency]], [[addressing mode]]s, [[virtual memory]]), and the [[input/output]] model of implementations of the ISA.
Line 12 ⟶ 13:
If an [[operating system]] maintains a standard and compatible [[application binary interface]] (ABI) for a particular ISA, machine code will run on future implementations of that ISA and operating system. However, if an ISA supports running multiple operating systems, it does not guarantee that machine code for one operating system will run on another operating system, unless the first operating system supports running machine code built for the other operating system.
An ISA can be extended by adding instructions or other capabilities, or adding support for larger addresses and data values; an implementation of the extended ISA will still be able to execute [[machine code]] for versions of the ISA without those extensions. Machine code wiping all memory using those extensions will only run on implementations that support those extensions.
The binary compatibility that they provide makes ISAs one of the most fundamental abstractions in [[computing]]
. ==Overview==
|