El decimal y el hexadecimal no tienen nada que ver con eso. Estas son solo formas diferentes de expresar el mismo patrón. El% binario 1001
es hexadecimal 0x9, decimal sin signo 9 y decimal de 4 bits con signo "negativo 7". Esas son solo formas en que una persona puede escribir el número, la computadora solo ve el patrón binario.
Suponiendo que su "computadora diy" usa un Von Neumann Architecture
(como la mayoría de las máquinas), con las instrucciones y los datos almacenados en la misma memoria, la única forma de distinguir entre las instrucciones y los datos es por contexto. Durante la fase de búsqueda de instrucciones, se supone que todo lo que se lee de la memoria en el puntero de instrucciones es una instrucción. Los datos inmediatos se obtienen durante una fase posterior, si corresponde. Es posible que algunas instrucciones solo requieran el código de la instrucción, mientras que otras pueden requerir bytes de datos adicionales almacenados en ubicaciones posteriores. Por lo tanto, no todas las ubicaciones de memoria contienen necesariamente una instrucción.
Una alternativa es usar Harvard Architecture
, con memorias separadas para instrucciones y datos. Esto se utiliza en los chips del procesador de señal digital TMS320.
Uno de los mayores problemas que tendrá con este proyecto es que tiene que hacer todo su trabajo en su propio lenguaje de máquina personalizado, a menos que también escriba su propio ensamblador y compilador. Como dice que actualmente no sabe mucho de informática, podría ser más fácil comenzar a "retrocomputing" utilizando una arquitectura de microcontrolador más antigua que ya tiene ensambladores, compiladores y bibliotecas que puede usar.
Es posible que desee ver la arquitectura de algunos microcontroladores más antiguos, como el 6502
o Motorola 68HC11
, el Intel 8080
, y tal vez incluso el 8051
(aunque esa tiene algunas peculiaridades). También podría valer la pena buscar en opencores.org para algunas implementaciones de HDL, incluso si no está utilizando un FPGA. Se ha escrito mucho acerca de estos microcontroladores, por lo que esto debería brindar un contexto útil para comprender los problemas básicos.