《深入理解计算机系统(第三版)》阅读随笔
压入和弹出栈数据
栈是一种数据结构,遵循“先进先出”原则。按照惯例,栈顶一般放在底部,栈向低地址方向增长,因此压栈是减小栈指针值,并将数据存在放在内存中,而出栈是从内存中读取数据,并且增加栈指针的值。
将一个四字值压入栈中,相当于先将栈指针减八,然后将值写入到新的栈顶地址,即分别使用 subq 和 movq 指令,共消耗八个字节,而如果使用入栈指令 pushq,只需一个字节即可。
《深入理解计算机系统(第三版)》阅读随笔
栈是一种数据结构,遵循“先进先出”原则。按照惯例,栈顶一般放在底部,栈向低地址方向增长,因此压栈是减小栈指针值,并将数据存在放在内存中,而出栈是从内存中读取数据,并且增加栈指针的值。
将一个四字值压入栈中,相当于先将栈指针减八,然后将值写入到新的栈顶地址,即分别使用 subq 和 movq 指令,共消耗八个字节,而如果使用入栈指令 pushq,只需一个字节即可。
本文标题:程序的机器级表示 -- 访问信息(三)
本文链接:https://www.haomeiwen.com/subject/viungltx.html
网友评论