Re: Unable to use a variable in instruction

Robert Plantz <[email protected]>
Newsgroups gmane.linux.assembly
Message-ID <1192413717.5651.4.camel@ubuntu>
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 [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.