首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 嵌入开发 > 汇编语言 >

32位保护模式和16位虚模式解决思路

2012-03-27 
32位保护模式和16位虚模式1.它们都有.code.data这些段32位保护模式的和16位虚模式的 有什么区别呢??问题2:

32位保护模式和16位虚模式

1.

它们都有.code .data这些段


32位保护模式的和16位虚模式的 有什么区别呢??



问题2:

对于 32位 汇编的 栈是不是和C++ 中的 栈一样(存储临时变量的内存)?








[解决办法]
1. 区别比较大了。首先段的大小上,32 位的没有了 64K 的限制,同一属性的就能放在同一段里了,不再象 16 位的那样比较大的程序,数据或代码都可能要被拆成多个数据或代码段。更重要的是,32 位有完备的段属性和保护机制,16 位完全没有。
2. 栈的作用,不只是存储临时变量的,函数/子程间的参数传递、寄存器或临时数据的保护恢复等等,都需要使用到堆栈。当然了,汇编本身的特性让它比 c++ 在对堆栈的操作上有更大的灵活性和自由度;因此也就要求 coder 更小心些。

热点排行