bluejay Posted January 15, 2021 Share Posted January 15, 2021 How did assembly language come into existence? Did early assemblers from the 70s and 80s have the various functions new assemblers now come with(such as defining variables, etc.) or were they simply translating each hex value into legible text and numbers? I would imagine someone back in the day trying to program an microprocessor in hex decided to give each opcode a name to make it easier to read and write, and later wrote software to automatically translate those names into hex values, ready to be computed, which became the first assembler. Or was the assembler invented alongside the microprocessor from the start? 1 Quote Link to comment Share on other sites More sharing options...
carlsson Posted January 15, 2021 Share Posted January 15, 2021 (edited) Assembly language as such predates microprocessors. For instance IBM released BAL for System/360 in 1964. Per Wikipedia, Kathleen Booth is credited for have invented assembly language in circa 1947. The first mnemonics consisted of one letter each and were created by David Wheeler 1948. The term and concept then were used through the 1950's. The first computer /not/ programmed entirely in assembly language was the Burroughs MCP from 1961. https://en.wikipedia.org/wiki/Assembly_language#Historical_perspective Edited January 15, 2021 by carlsson 2 Quote Link to comment Share on other sites More sharing options...
Krebizfan Posted January 15, 2021 Share Posted January 15, 2021 Assembly went well beyond just including a mnemonic for each instruction and having a variable as a label for a memory location. The PDP-8 assembler included many mnemonics for what would be library routines in normal syntax. The PDP-8 has very few instructions. The I/O mnemonics would direct I/O to the correct device without needing a dozen instructions to send data to the correct destination. That was back in 1965 and based on the PDP-5 assembler from 1963. Assembler concepts were established fairly early on. https://tangentsoft.com/pidp8i/wiki?name=A+Field+Guide+to+PDP-8+Assemblers 2 Quote Link to comment Share on other sites More sharing options...
bluejay Posted January 15, 2021 Author Share Posted January 15, 2021 Wow, never guessed assembly language would be older than the microprocessors. I'm really not familiar with minicomputers or computers with TTL instead of microprocessors, so I'm not entire sure how these worked, but still, it's very interesting. Quote Link to comment Share on other sites More sharing options...
carlsson Posted January 15, 2021 Share Posted January 15, 2021 I'm no expert, but microprocessors mostly seem to be about miniatyrization of existing tech, integrating a lot of transistors into a chip. Storage media existed much earlier of course, otherwise the advent of programmable computers would've been somewhere around 1972 which didn't explain how many popular programming languages could have been created years before. 2 Quote Link to comment Share on other sites More sharing options...
ChildOfCv Posted January 16, 2021 Share Posted January 16, 2021 Yeah, even the rolled paper used in player pianos could be considered a form of machine language. 4 Quote Link to comment Share on other sites More sharing options...
mr_me Posted January 17, 2021 Share Posted January 17, 2021 (edited) On 1/14/2021 at 9:28 PM, bluejay said: How did assembly language come into existence? Did early assemblers from the 70s and 80s have the various functions new assemblers now come with(such as defining variables, etc.) or were they simply translating each hex value into legible text and numbers? I would imagine someone back in the day trying to program an microprocessor in hex decided to give each opcode a name to make it easier to read and write, and later wrote software to automatically translate those names into hex values, ready to be computed, which became the first assembler. Or was the assembler invented alongside the microprocessor from the start? If you look at some early microprocessor based computers of the 1970s like the altair 8800, you'll see a series of switches and lights. The switches are used to select addresses and enter data in binary, and lights show data and addressess in binary. Teletype interfaces came later and were relatively expensive. Programming these early microprocessor computers was done in binary, not even hex. At the same time more expensive minicomputers had video terminals and higher level language compilers. The earliest mainframe computers could have had access to teletype interfaces but were still programmed in binary using switches or punch cards, until assembly was developed. Edited January 17, 2021 by mr_me 2 Quote Link to comment Share on other sites More sharing options...
Krebizfan Posted January 17, 2021 Share Posted January 17, 2021 Intel had been shipping the Intellec development systems along with an assembler before any microcomputer using those chips was produced. I think all CPU designs after the mid-60s were released alongside a matching assembler. The switches weren't intended to be a primary programming interface but a bootstrap entry. Program the address of the paper tape; load the contents of the tape; jump to the start of the loaded program. Cheaper ROMs reduced the need for panel switches. Discarded teletypes were often the initial interfaces for pre-production micros which was used to produce the code that would be used to control a variation of the TV Typewriter and audio cassette deck. Colleges got rid of teletypes because it was possible to fit several glass terminals in floor space needed for each teletype. 2 Quote Link to comment Share on other sites More sharing options...
oracle_jedi Posted January 18, 2021 Share Posted January 18, 2021 I did an internship at IBM in 1989/90, back when Big Blue was still big and mainly into HW. I used the phrase "assembly language" at the lunch table one day, and they all jumped on me. "It's not assembly language! It's ASSEMBLER!" Sure enough, at that time, every IBM-branded manual I could find labelled it ASSEMBLER. You wrote Assembler, and assembled into machine code with an assembler. 2 Quote Link to comment Share on other sites More sharing options...
mr_me Posted January 18, 2021 Share Posted January 18, 2021 The intellec development system and its assembler was expensive. Many firms in the 1970s and 80s used a larger more general purpose computer, like a pdp-11, and developed their own cross-assemblers that they could target to various microprocessors. Microsoft developed altair basic on a mainframe. Back in the 1940s, they didn't have any such tools to develop the first assemblers. 1 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.