99久久全国免费观看_国产一区二区三区四区五区VM_久久www人成免费看片中文_国产高清在线a视频大全_深夜福利www_日韩一级成人av

  • 回復
  • 收藏
  • 點贊
  • 分享
  • 發新帖

2407的匯編存儲問題(匯編的)

我想在.bss上開辟一段空間,然后將結果存放到這段空間(長度為100字)放的數據放在ACC里面,我有一個問題就是怎么將結果存到存儲空間里面去,然后再實現地址積存器的自加,直到需要的所有的數據全部存儲完畢
我是這樣定義這個空間的

大家幫我看看1155739655.asm
全部回復(8)
正序查看
倒序查看
youngboy
LV.2
2
2006-08-17 12:51
可以使用輔助寄存器,通過循環來實現.數據再多也可以方便存儲
如:LAR    AR0,#MATRIX     ;傳送數據存儲的地址
            LAR    AR1,#215 ;216個數據
            LACC   #DATAS_  ;傳送數據的地址          
            MAR    *,AR0
INIT_TBL:  
          TBLR   *+,AR1           ; 下一個
            ADD    #1              ; 下一個地址
            BANZ   INIT_TBL,AR0
0
回復
kcw_2005
LV.2
3
2006-08-18 08:31
@youngboy
可以使用輔助寄存器,通過循環來實現.數據再多也可以方便存儲如:LAR    AR0,#MATRIX    ;傳送數據存儲的地址            LAR    AR1,#215;216個數據            LACC  #DATAS_  ;傳送數據的地址                      MAR    *,AR0INIT_TBL:            TBLR  *+,AR1          ;下一個            ADD    #1              ;下一個地址            BANZ  INIT_TBL,AR0
我覺得你最好定義一個100的數組,這樣的好處是這個為初始化的數組就存放在 bss 段了,將結果放在數組中,再實現數組累加,應該能作出來
0
回復
zhonggorm
LV.1
4
2006-08-18 14:33
大家好:本人現正在開發一種動態LED圖形顯示方案,由于技朮問題遲遲還沒有下產 ,希望可以和更多同行作技朮交流.它不是點陣型的圖型顯示,而是利用動力與掃描時間結合為一體的和種顯示技朮,現只是圖型顯示這方面還有待開發.LYHZHONGGO@126.COM
0
回復
2006-08-18 16:50
@youngboy
可以使用輔助寄存器,通過循環來實現.數據再多也可以方便存儲如:LAR    AR0,#MATRIX    ;傳送數據存儲的地址            LAR    AR1,#215;216個數據            LACC  #DATAS_  ;傳送數據的地址                      MAR    *,AR0INIT_TBL:            TBLR  *+,AR1          ;下一個            ADD    #1              ;下一個地址            BANZ  INIT_TBL,AR0
有個問題想請教一下:我要在.bss 開辟一段長為200字的數據區,使用 下面兩條條語句那條是合適的    MP/MC=1
下面那個程序可以實現將所采集到的值存儲到所開辟的 ADRESULT這段存儲空間里面去,還是兩個都不可以,需要怎么修改一下.麻煩你幫我看看了:)
.bss   ADRESULT    200(這個數據段是不是在b1里面?)

下面的程序可以實現將所采集到的值存儲到所開辟的 ADRESULT這段存儲空間里面去嗎
LAR  AR0,#ADRESULT
LAR  AR1,#199
LACC #RESULT
MAR  *,AR0

INIT_TBL
  TBLR  *+,AR1
  ADD   #1
  BANZ  INIT_TBL,AR0



ADRESULT     .usect   "adresult"   200(這個數據段也是在b1里面嗎)
LAR  AR0,#ADRESULT
LAR  AR1,#199
LACC #RESULT
MAR  *,AR0

INIT_TBL
  TBLR  *+,AR1
  ADD   #1
  BANZ  INIT_TBL,AR0
0
回復
kcw_2005
LV.2
6
2006-08-19 08:32
@snoopopy415
有個問題想請教一下:我要在.bss開辟一段長為200字的數據區,使用下面兩條條語句那條是合適的    MP/MC=1下面那個程序可以實現將所采集到的值存儲到所開辟的ADRESULT這段存儲空間里面去,還是兩個都不可以,需要怎么修改一下.麻煩你幫我看看了:).bss  ADRESULT    200(這個數據段是不是在b1里面?)下面的程序可以實現將所采集到的值存儲到所開辟的ADRESULT這段存儲空間里面去嗎LAR  AR0,#ADRESULTLAR  AR1,#199LACC#RESULTMAR  *,AR0INIT_TBL  TBLR  *+,AR1  ADD  #1  BANZ  INIT_TBL,AR0ADRESULT    .usect  "adresult"  200(這個數據段也是在b1里面嗎)LAR  AR0,#ADRESULTLAR  AR1,#199LACC#RESULTMAR  *,AR0INIT_TBL  TBLR  *+,AR1  ADD  #1  BANZ  INIT_TBL,AR0
一般的將bss段放在數據存儲器得外部 RAM,地址一般分配為0X8000,長度為0x7ff0,你上面的第二個程序的usect,應該是你自己定義的段吧,那根據你的需要可以定義到B1或外部RAM,一般的將B0B1合起來用做軟件堆棧,所以你那個段放在外部RAM或者B2或者SARAM.
0
回復
kcw_2005
LV.2
7
2006-08-19 09:05
@snoopopy415
有個問題想請教一下:我要在.bss開辟一段長為200字的數據區,使用下面兩條條語句那條是合適的    MP/MC=1下面那個程序可以實現將所采集到的值存儲到所開辟的ADRESULT這段存儲空間里面去,還是兩個都不可以,需要怎么修改一下.麻煩你幫我看看了:).bss  ADRESULT    200(這個數據段是不是在b1里面?)下面的程序可以實現將所采集到的值存儲到所開辟的ADRESULT這段存儲空間里面去嗎LAR  AR0,#ADRESULTLAR  AR1,#199LACC#RESULTMAR  *,AR0INIT_TBL  TBLR  *+,AR1  ADD  #1  BANZ  INIT_TBL,AR0ADRESULT    .usect  "adresult"  200(這個數據段也是在b1里面嗎)LAR  AR0,#ADRESULTLAR  AR1,#199LACC#RESULTMAR  *,AR0INIT_TBL  TBLR  *+,AR1  ADD  #1  BANZ  INIT_TBL,AR0
我覺得這兩個程序都有問題,問題在那個表讀指令是把定義在程序空間的一段值給200數組ADRESULT,但是你的值是采樣來的,值不應該放在程序空間,比如我事先定義一個數據段,data.下面放200個常數值,再讀這個表是沒問題的,因為凡是初始化的段都放在程序空間,為初始化的放在數據空間,所以你這個表讀指令有問題,除非你的數據來源就在程序空間
0
回復
2006-08-19 16:47
@kcw_2005
我覺得這兩個程序都有問題,問題在那個表讀指令是把定義在程序空間的一段值給200數組ADRESULT,但是你的值是采樣來的,值不應該放在程序空間,比如我事先定義一個數據段,data.下面放200個常數值,再讀這個表是沒問題的,因為凡是初始化的段都放在程序空間,為初始化的放在數據空間,所以你這個表讀指令有問題,除非你的數據來源就在程序空間
謝謝你一直這么認真的回復,其實我對.usect和.bss這兩個分配弄的不是很清楚,我一直以為它們總是分配在數據存儲區里,和程序存儲區沒有什么聯系,我在一本書上看到這樣去定義一個轉換A/D的結果積存器
   .data
ADRESULT  .word  00h(這是將ADRESULT放在程序存儲區,同時其初始值為0)
然后在存儲轉換結果的時候是先將結果放在ACC里面再采用下面的語句
SACH   ADRESULT (A/D的采樣結果放在ACC里面的高十六位,這條語句直接取其高位放在ADRESULT)
我就試著照這樣去做了,但是在ADRESULT里面怎么也看不到采樣的結果值,這是為什么?
如果我想將這200個數組定義在b1里面該怎么去做,可以給點提示一下嗎?
0
回復
kcw_2005
LV.2
9
2006-08-22 08:17
@snoopopy415
謝謝你一直這么認真的回復,其實我對.usect和.bss這兩個分配弄的不是很清楚,我一直以為它們總是分配在數據存儲區里,和程序存儲區沒有什么聯系,我在一本書上看到這樣去定義一個轉換A/D的結果積存器  .dataADRESULT  .word  00h(這是將ADRESULT放在程序存儲區,同時其初始值為0)然后在存儲轉換結果的時候是先將結果放在ACC里面再采用下面的語句SACH  ADRESULT(A/D的采樣結果放在ACC里面的高十六位,這條語句直接取其高位放在ADRESULT)我就試著照這樣去做了,但是在ADRESULT里面怎么也看不到采樣的結果值,這是為什么?如果我想將這200個數組定義在b1里面該怎么去做,可以給點提示一下嗎?
我認為在data段存是可以的,累加器的高十六位放在ADRESULT中,你應該再看看之前的ACC中值的格式是Q多少,我給你會過了,在bss段中存200個,用你以前的表讀指令好像不行
0
回復
主站蜘蛛池模板: 欧美另类视频一区 | 成人午夜免费在线 | 日韩三级免费 | 日本大片在线免费观看 | 国外欧美一区另类中文字幕 | 欧美性xxxx狂欢老少配 | 日本天堂视频在线观看 | 国产精品青青青高清在线 | 久久婷婷五月综合成人D啪 成人av视频在线观看 | aaaaa毛片 | 免费在线观看黄色网 | 大乳妇女99精品免费91 | 久久香蕉三级国产黑人 | 久久久久久一区国产精品 | 97精品伊人久久久大香线蕉 | 四虎av无码专区亚洲av | 人人鲁免费播放视频 | 91精品一区二区三区综合在线爱 | 男男网站18禁免费 | 国产精品福利自产拍在线观看 | 日本成片区免费久久 | 亚洲精品乱码久久久久久高潮 | 一区二区三区AV波多野结衣 | 高清性色生活片免费播放网 | 日本精品一二三 | 久久不卡一区 | 啪啪免费看 | 国产在线观看第一页 | 国产女人高潮抽搐叫床视频 | 免费无码成人AV片在线在线播放 | JIZZJIZZ亚洲日本少妇 | 亚洲免费黄色片 | 国产欧美一区二区在线观看 | avtom影院址永久入口跳转 | 久久在草 | 亚洲精品乱码久久久久久高潮 | 国产网站观看 | 老熟女激烈的高潮 | 伊人中文字幕在线观看 | 一道本在线观看视频 | 内射吃奶嗯嗯视频 |