On Sun, 2007-10-14 at 19:37 -0400, A D wrote: > I'm having strange problem accessing a variable in a gnu assembly language program. > When i write a code: > > .section .data > x = 4 This is equivalent to writing .equ x,4 > mm: > .int 1, 2 > > .section .text > .globl _start > _start: > nop So this instruction: > movl x, %ecx #can't do this is trying to move the 4 bytes stored at memory location 4 into the ecx register. As the OS told you, you cannot do that. The way to allocate an initialized 32-bit int in the .data section is: x: .long 4 - To unsubscribe from this list: send the line "unsubscribe linux-assembly" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html
- Follow-Ups:
- References:
- Unable to use a variable in instruction
- From: A D
- Unable to use a variable in instruction
- Prev by Date: Re: Unable to use a variable in instruction
- Next by Date: RE: Unable to use a variable in instruction
- Previous by thread: Re: Unable to use a variable in instruction
- Next by thread: RE: Unable to use a variable in instruction
- Index(es):