I’m currently learning x86 assembly with “Guide to assembly language in Linux” and on page 241 there is written that only 16 bit words or 32 bit words are saved onto the stack, but is this true?
I mean in C a char array consists of single bytes and those are saved onto the stack as C consists of functions which use the call stack, right? So what am i getting wrong?
I’m currently learning x86 assembly with Guide to assembly language in Linux and on
Share
Even bytes are padded with zeros and converted to 16 bit or 32 bit words before being pushed.
Consider the stack as pile of plates of particular size (16 or 32). Is there a way you can push half the size plate .. No ? Even if you want to push the half the size, you would pad it to make the full size plate and then push it.