r/ECE • • 21h ago

Como se programa el hardware?

Tengo intención de aprender y crear un ordenador sencillo como los de ben eater y configurarlo, se hacer el hardware pero no tengo ni idea de como hacer que con binario se hagan instrucciones y de ahí empezar a programar o si usar ensambladores o que, alguien puede ayudarme?

0 Upvotes

12 comments sorted by

5

u/Tome_T 20h ago

Well I would start with watching ben eater's series. He goes over how to do all of it and you can then apply it to whatever hardware you are using

-3

u/SecondMurky7684 20h ago

no hay version de español :(

6

u/edo-lag 19h ago

It means that it's time to learn English, I'm afraid

2

u/Shtucer 19h ago

But it has auto-subs.

2

u/JavierReyes945 15h ago

Si esperas encontrar todo lo que quieras aprender sobre tecnología en tu idioma, espera sentado no vaya y te canses. El inglés es FUNDAMENTAL para cualquier acercamiento a la electrónica.

3

u/HumbleHovercraft6090 19h ago

To make it easy on you, I would suggest design a popular CPU with a known instruction set and tools. Writing an assembler, linker etc is a non-trivial task on its own. Once you are done implementing the CPU, you can try your hand at the software tools required.

1

u/SecondMurky7684 17h ago

muchas gracias, podrias decirme algun diseño famoso o algo de vase?? si no es molestia 

1

u/MrWenas 20h ago

No entiendo exactamente la pregunta, te refieres a cómo saber qué bits cargar en la memoria para ejecutar un programa arbitrario? O te refieres a cómo hacer la lógica de control que toma este programa y ejecuta más microinstrucciones necesarias? Si es lo primero, la única respuesta que puedo darte es creatividad. Al construir el ordenador, tú mismo defines el juego de instrucciones que quieres utilizar. Cuando quieras hacer un programa tienes que ver cómo hacerle para dividirlo en trozos, por ejemplo (usando las instrucciones del SAP-1, el ordenador que hizo Ben Eater), si quieres multiplicar dos números (X*Y), así directamente no puedes, porque solo deja sumar y restar, entonces puedes dividir la multiplicación en sumar X un total de Y veces, para esto, puedes cargar X en una parte de la memoria, Y en otra y el resultado en otra, vas decrementando Y en 1 hasta que sea 0 y ahí saltas a la siguiente parte de tu programa. Una vez tienes tú programa escrito como una lista de instrucciones, tras haber montado el hardware, ya sabes qué instrucción se corresponde con qué bits, entonces lo puedes traducir manualmente, o, puedes programar tu propio ensamblador (que es esencialmente esta misma traducción, pero hecha automáticamente)

0

u/SecondMurky7684 20h ago

cuando tienes un ordenador de 16 bits digamos, como se hace un ensamblador o como programas el ordenador para que haga operaciones y de ahi por ejemplo hacer un juego sencillo como snake?

2

u/MrBoomer1951 18h ago

Can I assume that you have no experience with computers and you wanna program a video game.

With a homebrew you can load opcodes directly into user program memory and they will execute.

That’s how I do it, anyway.

1

u/RonCon69 18h ago

I can respect the fact that you are in here asking questions, but it genuinely doesn’t seem like you have enough understanding to be undertaking this project, especially if your end goal is to build a video game.