Lenguaje de máquina

Lenguaje de máquina del Intel 8088. El código de máquina en hexadecimal se resalta en rojo, el equivalente en lenguaje ensamblador en magenta, y las direcciones de memoria donde se encuentra el código, en azul. Abajo se ve un texto en hexadecimal y ASCII.

El lenguaje de máquina o código máquina es el sistema de códigos directamente interpretable por un circuito microprogramable, como el microprocesador de una computadora o el microcontrolador de un autómata. Este lenguaje está compuesto por un conjunto de instrucciones que determinan acciones a ser tomadas por la máquina. Un programa consiste en una cadena de estas instrucciones más un conjunto de datos sobre el cual se trabaja. Estas instrucciones son normalmente ejecutadas en secuencia, con eventuales cambios de flujo causados por el propio programa o eventos externos. El lenguaje de máquina es específico de la arquitectura de la máquina, aunque el conjunto de instrucciones disponibles pueda ser similar entre arquitecturas distintas.

Los circuitos microprogramables son digitales, lo que significa que trabajan con dos únicos niveles de tensión. Dichos niveles, por abstracción, se simbolizan con los números 0 y 1, por eso el lenguaje de máquina sólo utiliza dichos signos. Esto permite el empleo de las teorías del álgebra booleana y del sistema binario en el diseño de este tipo de circuitos y en su programación.

Una visión típica de la arquitectura de computadoras como una serie de capas de abstracción: hardware, firmware, ensamblador, kernel, sistema operativo y aplicaciones.

Claude Elwood Shannon, en su libro Analysis of Relay and Switching Circuits, y con sus experiencias en redes de conmutación, sentó las bases para la aplicación del álgebra de Boole a las redes de conmutación. Una red de conmutación es un circuito de interruptores eléctricos que al cumplir ciertas combinaciones booleanas con las variables de entrada, define el estado de la salida. Este concepto es el núcleo de las puertas lógicas, las cuales son, por su parte, los ladrillos con que se construyen sistemas lógicos cada vez más complejos. Shannon utilizaba el relé como dispositivo físico de conmutación en sus redes, dado que el relé, a igual que una lámpara eléctrica, posee dos estados: activado (encendido) o desactivado (apagado).

El desarrollo tecnológico ha permitido evolucionar desde las redes de relés electromagnéticos a circuitos con tubos de vacío, luego a redes transistorizadas, hasta llegar a los modernos circuitos integrados, en cuya cúspide se encuentran los circuitos microprogramados.


Other Languages
العربية: لغة الآلة
беларуская: Машынны код
български: Машинен език
বিষ্ণুপ্রিয়া মণিপুরী: মেশিন লেঙগুয়েজ
brezhoneg: Areg ijinenn
bosanski: Mašinski jezik
čeština: Strojový kód
dansk: Maskinkode
Ελληνικά: Γλώσσα μηχανής
English: Machine code
Esperanto: Maŝinkodo
eesti: Masinkood
فارسی: کد ماشین
suomi: Konekieli
français: Langage machine
עברית: שפת מכונה
हिन्दी: मशीनी भाषा
hrvatski: Strojni jezik
hornjoserbsce: Mašinowa rěč
magyar: Gépi kód
Bahasa Indonesia: Bahasa mesin
íslenska: Vélamál
日本語: 機械語
la .lojban.: sambau
한국어: 기계어
олык марий: Машин код
മലയാളം: യന്ത്രഭാഷ
монгол: Машин код
မြန်မာဘာသာ: Machine language
Nederlands: Machinetaal
norsk nynorsk: Maskinkode
norsk bokmål: Maskinkode
română: Limbaj mașină
русский: Машинный код
srpskohrvatski / српскохрватски: Mašinski jezik
Simple English: Machine code
slovenčina: Strojový kód
slovenščina: Strojna koda
српски / srpski: Машински језик
svenska: Maskinkod
Türkçe: Makine dili
українська: Машинний код
Tiếng Việt: Ngôn ngữ máy
中文: 机器语言
粵語: 機器語言