Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/assembly/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Assembly 8051上的初始化数据段_Assembly_8051 - Fatal编程技术网

Assembly 8051上的初始化数据段

Assembly 8051上的初始化数据段,assembly,8051,Assembly,8051,我是一个装配新手,我有一个问题。我已经定义了一个数据段,在这个数据段中,我希望每个变量保持2个字节。如何设置这些变量的初始值?我在用Keil的模拟器和8051 uC ?DATAS SEGMENT DATA RSEG ?DATAS ; begin data segment cnt: DS 2h value: DS 2h 这不正确:请参阅更新 ?DATAS SEGMENT DATA RSEG ?DATAS ; begin data segment cnt:

我是一个装配新手,我有一个问题。我已经定义了一个数据段,在这个数据段中,我希望每个变量保持2个字节。如何设置这些变量的初始值?我在用Keil的模拟器和8051 uC

?DATAS  SEGMENT DATA

    RSEG ?DATAS ; begin data segment
cnt:     DS 2h
value:   DS 2h

这不正确:请参阅更新

?DATAS  SEGMENT DATA

    RSEG ?DATAS ; begin data segment
cnt:     DW your_16bit_value_here
value:   DW your_16bit_value_here

更新:抱歉,以上定义仅适用于代码段

8051处理器有单独的代码和数据存储器。代码可以被刷新,所以在代码段中定义的数据可以有一个初始值


另一方面,在数据段中定义的数据将存储在RAM中,RAM的内容在启动时没有定义。必须从代码中初始化需要初始值的变量。

这不正确:请参阅更新

?DATAS  SEGMENT DATA

    RSEG ?DATAS ; begin data segment
cnt:     DW your_16bit_value_here
value:   DW your_16bit_value_here

更新:抱歉,以上定义仅适用于代码段

8051处理器有单独的代码和数据存储器。代码可以被刷新,所以在代码段中定义的数据可以有一个初始值


另一方面,在数据段中定义的数据将存储在RAM中,RAM的内容在启动时没有定义。必须从代码中初始化需要初始值的变量。

我尝试过,但得到了以下结果:错误A37:此段中的操作无效与我的解决方案相关如何在代码中初始化这两个变量?我尝试过,但得到了以下结果:错误A37:此段中的操作无效与我的解决方案相关如何在代码中初始化这两个变量?