2 ms·
I took a look in the EDSAC manual ("The Preparation of Programs for an Electronic Digital Computer", 1951) at https://archive.org/details/programsforelect00wilk
by dalke 5y ago
I took a look in the EDSAC manual ("The Preparation of Programs for an Electronic Digital Computer", 1951) at
https://archive.org/details/programsforelect00wilk/page/154/mode/2up?q=sideways https://archive.org/details/programsforelect00wilk/page/154/... - linking to the earliest popcount description, Gillies-Miller.
I didn't see anything.
Then again, that hardware doesn't seem to support xor. Nor does the manual mention "Boolean" or "Booleian" (the latter was used in the older literature, see https://scholar.google.se/scholar?hl=sv&as_sdt=0%2C5&q=Booleian&btnG= https://scholar.google.se/scholar?hl=sv&as_sdt=0%2C5&q=Boole... for examples ).
I looked for, but didn't find, a description of it in HAKMEM (1972).
Those two exhaust my knowledge of reference materials for that era.
- dalke 5y agoThe earliest I've found so far is in "Introduction to PL360 programming" Guertin, Richard L, 1977 at https://www.slac.stanford.edu/spires/explain/manuals/PL360TXT.HTML https://www.slac.stanford.edu/spires/explain/manuals/PL360TX... |010| IF R5 = R6 THEN | CR 5,6 | |020| BEGIN | outer block | | BNE T.2 | |030| EXTERNAL DATA BLANKS BASE R9; | L 9,=V(BLANKS) | |040| PROCEDURE SWAP (R7); | B T.1 | |050| BEGIN B2 := B2 XOR B3; | SWAP XC 0(4,2),0(3) | |060| B3 := B3 XOR B2; | XC 0(4,3),0(2) | |070| B2 := B2 XOR B3; | XC 0(4,2),0(3) | |080| END; | of procedure | | BR 7 | |090| B3 := B3 OR B9; | main code | | T.1 OC 0(4,3),0(9) | |100| SWAP; | local procedure call | | BAL 7,SWAP | |110| END; | of outer block | | T.2 EQU * |