3 ms·
Assembly is the textual representation of an instruction set meant to be executed by a machine. That machine being abstract (turing), implemented in software (v
by CodeArtisan 5y ago
Assembly is the textual representation of an instruction set meant to be executed by a machine. That machine being abstract (turing), implemented in software (virtual) or hardware shouldn't be relevant. An alternative to assembly is lambda calculus which is not executed but evalued (everything is an expression, unlike assembly where everything is a statement).
- FatalLogic 5y agoI feel that extending the definition of 'a machine' to include abstract or virtual machines is an extension of the original meaning of 'Assembly' - it's not how the word was originally used. But it seems like it could be a better definition, as it gets closer to the essential meaning.
- pjmlp 5y agoThe original version was actually bytecode as you can see in many 50's and 60's papers, because when computing switched to micro-electronics most CPUs were micro-coded, this was one of the arguments of RISC against CISC, no micro-coded needed and all instructions should be implemented as hardware gates. After all these gates it turns out that while RISC had some nice ideas, the flexibility of microcoded CPUs won the war anyway, and nowadays stuff like FPGAs makes it even more flexible than traditional microcode languages.