> On Feb 27, 2016, at 2:01 PM, Paul Koning <[email protected]> wrote:
> 
> 
>> On Feb 26, 2016, at 7:13 PM, Clem Cole <[email protected]> wrote:
>> 
>> 
>> On Fri, Feb 26, 2016 at 6:28 PM, Nigel Williams 
>> <[email protected]> wrote:
>> Perhaps not unusual for the 1960s but laborious none-the-less.
>> 
>> ​Depends who you are.   For grins look for the original Cray-1 "assembler" 
>> box.   You'll discover there are no mnemonics like "add", "branch" - just 
>> octal codes.   Seymor didn't need them. ​
> 
> Obviously, to get an assembler you'd first have to bootstrap *that*, unless 
> you could write a cross-assembler.  And early assemblers weren't necessarily 
> all that fancy.  
> 
> I've been reading some 1950s era computer descriptions, for machines without 
> assemblers.  Opcodes are simply written as op/addr so you'd remember, say, 
> that 0 is add and 6 is store, and so forth.  A machine introduced in Holland 
> in 1958 -- the EL-X1 -- had a very bare-bones assembler, or slightly smart 
> loader, depending on how you'd want to think about it.  Just a few hundred 
> instructions; it had opcodes like "0A" (add to A) or "6S" (store S register). 
>  And it had symbolic addresses, but you couldn't label individual locations, 
> only "paragraphs" because symbols were only pairs of one of 13 letters, i.e., 
> a max of 169 symbols per program.  Still, with that primitive tool some large 
> software was written, such as the world's first ALGOL compiler.
> 
> It isn't really all that much harder than a modern assembler once you get 
> used to the different look.
> 
>       paul
> 

When I was in secondary school in the mid-1960’s, I had a weekend job as an 
operator on the
Atlas 2 (Titan) at Cambridge University in the UK and later worked as a junior 
programmer there over the summer when I went to university. Atlas instructions 
were fixed format (10-bit opcode field, 2 7-bit B-register addresses and a 
24-bit memory address) and the assembler
accepted numeric input for each of the fields. I still remember some of the 
basic instructions:

        121             3       0       5                       would load 5 
into B-register 3
        121         127 0       addr                    would jump to addr 
since B127 was the “PC”

The hardware did not include a subroutine call instruction so you had to use an 
“Extracted”
(sort of like a trap to BIOS) IIRC:

     1362               0       0       addr                    would call the 
routine at addr and leave a return
                                                                link in B90
        121         127    90   0                       would return from the 
subroutine

This was the first computer I had contact with and it really wasn’t that hard 
to remember the
basics although there were something like 300 instructions and a similar number 
of extracodes!

  John.

> _______________________________________________
> Simh mailing list
> [email protected]
> http://mailman.trailing-edge.com/mailman/listinfo/simh

_______________________________________________
Simh mailing list
[email protected]
http://mailman.trailing-edge.com/mailman/listinfo/simh

Reply via email to