问个关于assume的问题
为什么我没有定ds:data,但是我在code里面定义了mov ds:data....,然后程序就可以运行,那是不是说,我并不非要用assume定义ds:data,只要在code中定义mov ds:data就可以了...如果不是,那是什么情况下必须用assume定义段寄存器和段的关系.. assume 是假如,假定的意思,你定不定义ds:data,后面程序中都必须要把标号和段地址绑定在一起。是告诉编译器,data是数据段。 定义ds:data代表data在数据段中。如果未定义,如图中的程序,就表示data在代码段中,
这样代码的结构和框架就不太清晰,
代码量少,还无所谓,但如果代码量大的话,就不易于阅读和理解了
所以还是建议使用ds:data这种形式。
页:
[1]