2016黄鳝鱼 发表于 2017-8-31 23:32:00

问个关于assume的问题

为什么我没有定ds:data,但是我在code里面定义了mov ds:data....,然后程序就可以运行,那是不是说,我并不非要用assume定义ds:data,只要在code中定义mov ds:data就可以了...如果不是,那是什么情况下必须用assume定义段寄存器和段的关系..

assume1981 发表于 2017-9-1 14:59:04

assume 是假如,假定的意思,你定不定义ds:data,后面程序中都必须要把标号和段地址绑定在一起。是告诉编译器,data是数据段。

weizhongyang 发表于 2017-10-20 10:49:59

定义ds:data代表data在数据段中。
如果未定义,如图中的程序,就表示data在代码段中,
这样代码的结构和框架就不太清晰,
代码量少,还无所谓,但如果代码量大的话,就不易于阅读和理解了

所以还是建议使用ds:data这种形式。
页: [1]
查看完整版本: 问个关于assume的问题