Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
X86 assembly language
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
{{Short description|Family of backward-compatible assembly languages}} {{For|a specific list of x86 assembly language instructions|x86 instruction listings}} {{more citations needed|date=March 2020}} {{Lowercase title}} '''x86 assembly language''' is a family of [[Low-level programming language|low-level programming languages]] that are used to produce [[object code]] for the [[x86]] class of processors. These languages provide [[backward compatibility]] with CPUs dating back to the [[Intel 8008]] microprocessor, introduced in April 1972.<ref>{{Cite web|title=Intel 8008 (i8008) microprocessor family|url=https://www.cpu-world.com/CPUs/8008/|access-date=2021-03-25|website=www.cpu-world.com}}</ref><ref>{{Cite web|title=Intel 8008|url=http://cpumuseum.jimdofree.com/museum/intel/8008/|access-date=2021-03-25|website=CPU MUSEUM - MUSEUM OF MICROPROCESSORS & DIE PHOTOGRAPHY|language=en-US}}</ref> As assembly languages, they are closely tied to the architecture's machine code instructions, allowing for precise control over hardware. In x86 assembly languages, [[mnemonic]]s are used to represent fundamental CPU instructions, making the code more human-readable compared to raw [[machine code]].<ref name=":0">{{Cite web |title=Intel 8008 OPCODES |url=https://www.pastraiser.com/cpu/i8008/i8008_opcodes.html |access-date=2021-03-25 |website=www.pastraiser.com}}</ref> Each [[mnemonic]]s corresponds to a basic operation performed by the processor, such as arithmetic calculations, data movement, or [[Control flow|control flow decisions.]] Assembly languages are most commonly used in applications where performance and efficiency are critical. This includes [[Real-time operating system|real-time]] [[embedded system]]s, [[operating system|operating-system]] [[Kernel (operating system)|kernels]], and [[device driver]]s, all of which may require direct manipulation of hardware resources. Additionally, [[compiler|compilers]] for [[High-level programming language|high-level programming languages]] sometimes generate assembly code as an intermediate step during the compilation process. This allows for optimization at the assembly level before producing the final machine code that the processor executes.
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)