.lcomm var1 4 .lcomm var2 2 .global _start _start: # load the address of "var1" into register %eax movl $var1,%eax # eax = &var1 movl $0x1234abcd,(%eax) # *eax = 0x1234abcd movl $var2,%ebx # ebx = &var2 movw $0xabcd,(%ebx) # *ebx = 0xabcd movl $0, %ebx movl $1, %eax int $0x80