I have been going through assembly tutorials to understand how computers function at low level. I learned most of the standard x86/64 CPU instructions, but also still did not get all the answers, mostly relating to accessing the I/O and other hardware. So I have perhaps a somewhat silly question

  • Starting from scratch (PC without any operating system), is it possible to program any computer program only by giving the processor the assembly instructions? In specific then, the CPU controls the computation and the operating system can be coded only using the instructions.

And if so then

  • How does one access the sound cards/GPUs/monitors or other hardware through these instructions? The Int command is all I could find, but this does not seem to be enough to even draw something on the screen.

Big thanks.

That's a great question. It will take time and a lot of reading material to understand all this but if you wanted to program in assembly I would not be doing that from scratch on today's modern, say UEFI BIOS based PCs. You would be spending a year just to fill and wrap your head around that.

As to the old BIOS INT instructions these were indeed limited to basic screen, disk and other I/O operations. They are bare minimums back in the 1980's when we didn't have graphic or sound cards so there are no INT calls for graphic drawing of lines or much more than a beep on the speaker which may not exist on a modern PC.

At this point you may want to consider a smaller computer like the Arduino which is small enough for those to begin their study at the assembly level.

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.