For background, I am a programmer, but have largely ignored everything having to do with AI (re: LLMs) for the past few years.
I just got to wondering, though. Why are these LLMs generating high level programming language code instead skipping the middle man and spitting out raw 1s and 0s for x86 to execute?
Is it that they aren’t trained on this sort of thing? Is it for the human code reviewers to be able to make their own edits on top of the AI-generated code? Are there AIs doing this that I’m just not aware of?
I just feel like there might be some level of optimization that could be made by something that understands the code and the machine at this level.
I imagine this is hypothetically possible given correct and sufficient training data, but that’s besides the point I think needs to be made, here.
Basically nothing anyone is programming in user space these days produces machine code, and certainly none of it runs on the bare metal of the processor. Nothing outside of extremely low power embedded microcontroller applications, or dweebs deliberately producing for oldschool video game consoles, or similar anyway.
Everything happens through multiple layers of abstractions, libraries, hardware privilege levels, and APIs provided by your operating system. At the bottom of all of those is the machine code resulting in instructions happening on the processor. You can’t run plain machine code simultaneously with a modern OS, and even if you did it’d have to be in x86 protected mode so that you didn’t trample the memory and registers in use by the OS or other applications running on it, and you’d have a tough-to-impossible time using any hardware or peripherals including networking, sound, storage access, or probably even putting output on the screen.
So what you’re asking for is probably not an output anyone would actually want.