<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 匯編語(yǔ)言教程-段寄存器的說(shuō)明語(yǔ)句

匯編語(yǔ)言教程-段寄存器的說(shuō)明語(yǔ)句

作者: 時(shí)間:2011-10-06 來(lái)源:網(wǎng)絡(luò ) 收藏

  在源程序中可以定義多個(gè)段,每個(gè)段都要與一個(gè)建立一種對應關(guān)系。建立這種對應關(guān)系的說(shuō)明語(yǔ)句格式如下:
  ASSUME名:段名[,名:段名,……]
  其中:段寄存器是CS、DS、ES、SS、FS和GS,段名是在段定義語(yǔ)句說(shuō)明時(shí)的段名。
  在一條ASSUME語(yǔ)句中可建立多組段寄存器與段之間的關(guān)系,每種對應關(guān)系要用逗號分隔。例如,
  ASSUME CS:CODE1, DS:DATA1
  上面的語(yǔ)句說(shuō)明了:CS對應于代碼段CODE1,DS對應于數據段DATA1。
  在A(yíng)SSUME語(yǔ)句中,還可以用關(guān)鍵字NOTHING來(lái)說(shuō)明某個(gè)段寄存器不與任何段相對應。下面語(yǔ)句說(shuō)明了段寄存器ES不與某段相對應。
  ASSUME ES:NOTHING
  在通常情況下,代碼段的第一條語(yǔ)句就是用ASSUME語(yǔ)句來(lái)說(shuō)明段寄存器與段之間的對應關(guān)系。在代碼段的其它位置,還可以用另一個(gè)ASSUME語(yǔ)句來(lái)改變前面ASSUME語(yǔ)句所說(shuō)明的對應關(guān)系,這樣,代碼段中的指令就用最近的ASSUME語(yǔ)句所建立的對應關(guān)系來(lái)確定指令中的有關(guān)信息。
  例6.1段及其段說(shuō)明語(yǔ)句的作用。
  DATA1SEGMENT;定義數據段DATA1
  word1DW5678h
  byte1DB"ABCDEFG"
  DATA1ENDS
  DATA2SEGMENT;定義數據段DATA2
  word2DW1234h
  word3DW9876h
  DATA2ENDS
  DATA3SEGMENT;定義數據段DATA3
  byte2DB?
  DATA3ENDS
  CODE1SEGMENT;編寫(xiě)代碼段CODE1
  ASSUMECS:CODE1, DS:DATA1, ES:DATA2;(1)
  MOVAX, DATA1;(2)
  MOVDS, AX;(3)
  MOVAX, DATA2;(4)
  MOVES, AX;(5)
  …
  MOVAX, word1;訪(fǎng)問(wèn)段DATA1中的字變量word1
  MOVword2, AX;訪(fǎng)問(wèn)段DATA2中的字變量word2
  …
  ASSUMEDS:DATA3, ES:NOTHING;(6)
  MOVAX, DATA3
  MOVDS, AX
  MOVBL, byte2;訪(fǎng)問(wèn)段DATA3中的字節變量byte2
  …
  MOVAX, 4C00H;(7)
  INT21H;(8)
  CODE1 ENDS
  語(yǔ)句(1)和(6)分別說(shuō)明了段和段寄存器之間的對應關(guān)系,其中語(yǔ)句(6)重新說(shuō)明語(yǔ)句(1)所指定的對應關(guān)系。
  二組語(yǔ)句(2)和(3)、(4)和(5)實(shí)現對段寄存器DS和ES賦初值。ASSUME說(shuō)明語(yǔ)句只起說(shuō)明作用,它不會(huì )對段寄存器賦值,所以,必須對有關(guān)段寄存器賦值。在以后的其它源程序中也都是用此方法來(lái)實(shí)現對數據段寄存器賦值的。
  語(yǔ)句(7)和(8)是調用中斷21H的4CH號功能來(lái)結束本程序的執行,程序的返回代碼由寄存器AL來(lái)確定。結束本程序執行的指令是所有主模塊必須書(shū)寫(xiě)的語(yǔ)句。
  注意:代碼段寄存器不能由程序員在源程序中對其賦值,其值是由操作系統在裝入它進(jìn)入系統運行時(shí)自動(dòng)賦值的。



關(guān)鍵詞: 匯編語(yǔ)言 段寄存器

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>