• Thwompthwomp@lemmy.world
    link
    fedilink
    arrow-up
    9
    ·
    1 year ago

    I thought that the assembler is a specific program that translates mnemonics into the corresponding machine code. Perhaps in early computing this was done by hand so a person was the assembler (and worked in assembler), but now that is handled by software (and supports various macros). So programming in assembly would generate a stream of text that must be assembled by an assembler. (Although I have heard people refer to programming in assembler as well, just not often.)

    • lhamil64@programming.dev
      link
      fedilink
      arrow-up
      9
      ·
      1 year ago

      I hear people say “program in assembler” but IMO that’s wrong. I’d say you write the code in “assembly language” (or better yet, the actual architecture you’re using like “x86 assembly”) but you “assemble” it with an “assembler”. Kind of like how you could write a program in the “C language” and “compile” it with a “compiler”

      • amki@feddit.de
        link
        fedilink
        arrow-up
        1
        ·
        edit-2
        1 year ago

        A compiler and an assembler do wildly different things though. An assembler simply replaces mnemonics while a compiler transfers instructions to a whole other language.

        • Malfeasant@lemm.ee
          link
          fedilink
          arrow-up
          1
          ·
          1 year ago

          Depends on the language, really… C maps pretty closely to assembly language, it’s not as simple as one mnemonic to one machine code byte, more like tokens get mapped to sequences of machine code, a function call translates to some code that sets up a stack frame, a return tears it down…