Jump to content

英文维基 | 中文维基 | 日文维基 | 草榴社区

Talk:Zero address arithmetic

Page contents not supported in other languages.
From Wikipedia, the free encyclopedia

Interpretation: I thought that zero-address referred to computer operation codes whereby the add, subtract, multiply, divide (etc) op codes did not have any address for their operand, relying instead on finding them via a stack mechanism. There would be a special op code for loading data. As in the B6700 system and similar. There is a choice between zero, one, two, and three address schemes, whereby x:=a + b; might be (with varying assumptions about the context, be it an arithmetic accumulator, or a stack-based scheme) somewhat as follows:

ADD A,B,X    - Three addresses.

or

ADD A,B      - Two addresses.
STO X

or

Load  A       
Add   B      - One address.
Store X

or

Load A
Load B
Add          - No addresses.
Store X

This is quite separate from decisions about assigning addresses to data, whether at compilation time or run time. NickyMcLean (talk) 12:36, 16 September 2014 (UTC) @NickyMcLean: Indeed; the few references to this term invariably use it synonymously with "stack based". I think this was simply a term used by the KDF designers that didn't catch on elsewhere as is now being conflated with something else entirely. Maury Markowitz (talk) 22:31, 16 June 2019 (UTC)[reply]