Talk:Bytecode: Difference between revisions

Content deleted Content added
Bytecode vs. machine code: VAX, the ultimate byte code
Bytecode vs. machine code: similar issues on older machines
Line 104:
::::
::::This is a little strange. I don't know that anything deserves to be called bytecode more than VAX machine code. (And there are plenty of software implementations of VAX.) But also, I suspect the reason VAX went away, was that it uses a bytecode. VAX instructions can have from one to at least six operands. Each operand has a byte indicating the address mode for that argument. Depending on the address mode, that byte is followed by an appropriate number of bytes for that mode. It might be one to 60 bytes for an instruction. Like JVM code, it is well designed for processing one byte at a time. It is, however, extremely difficult to decode instructions in parallel. Very convenient for the microcoded VAX machines. The important distinction, then, is that it is convenient for processing one byte at a time, based on the state determined by earlier bytes. And especially, a large number of different modes depending on those bytes. [[User:Gah4|Gah4]] ([[User talk:Gah4|talk]]) 09:23, 30 November 2022 (UTC)
:::::
:::::The VAX-11/780 was hardly the first machine with variable length instructions, nor the first with complicated operand specifications. The [[Bendix G-20]], [[GE 635]] and [[RCA]] 601 have similar complexities in one way or another. A more modern example is the encoding of opcodes on [[IBM z/Architecture]]. The VAX was more influenced by the [[PDP-11]] than by, e.g., [[UCSD p-code]] --[[User:Chatul|Shmuel (Seymour J.) Metz Username:Chatul]] ([[User talk:Chatul|talk]]) 14:25, 30 November 2022 (UTC)
 
== Bytecode v8 ==