-=> Digital Man wrote to Boraxman <=-
DM> @MSGID: <61C89E1F.5377.dove-prg@vert.synchro.net>
DM> @REPLY: <61C84490.2753.dove-prg@bbs.mozysswamp.org>
DM> Re: C is the most efficient p
DM> By: Boraxman to Nightfox on
DM> Sun Dec 26 2021 09:27 pm
> -=> Nightfox wrote to Boraxman <=-
>
> Ni> @MSGID: <61C6BCF6.3338.dove_dove-prg@digitaldistortionbbs.com>
> Ni> @REPLY: <61C649CF.2751.dove-prg@bbs.mozysswamp.org>
> Ni> Re: C is the most efficient p
> Ni> By: Boraxman to Nightfox on
> Ni> Sat Dec 25 2021 09:12 am
>
> Ni>> But still, assembler for each processor is defined by the operations
> Ni>> that the processor understands, and there is a specific syntax for
> Ni>> each operation.
>
> Bo> Have you ever used AT&T syntax?
>
> Ni> I haven't.
>
> It's an alternative syntax for assembler, used by GAS and I guess other
> assemblers for Unix too.
>
> An example from a program I wrote is below
>
> movl %eax, BRK_Start
> movl %eax, BRK_End
> movl (%esp), %ecx
> cmp $1, %ecx
> je clifail
> cmp $3, %ecx
> jg clifail
> movl 8(%esp), %ebx
> jl success
> movb (%ebx), %al
>
>
> As you can see, the syntax is familiar, but different. Source and
> destination are the other way around for MOV commands, the offset notation
> is different, immediate values are prefixed with a $.
DM> Motorola 68K assemblers used the "move source, destination" as well
DM> (opposite of Intel/x86 assemblers).
DM> Basically, there's no real "standard" when it comes to assembly
DM> languages. --
Exactly, which is why I don't consider a language, because there isn't actually
a standard to construct a language. Each author of an assembler can make up
whatever they like. FASM is a language. MASM is a language, AT&T Intel is a
language, NASM is a language, etc etc
... MultiMail, the new multi-platform, multi-format offline reader!
--- MultiMail/Linux v0.52
■ Synchronet ■ MS & RD BBs - bbs.mozysswamp.org
|