用組合語言編寫程式的時候執行出現out of memory是什麼回事

2022-07-07 18:37:46 字數 1215 閱讀 2061

1樓:匿名使用者

記憶體溢位

請用edit開啟那個檔案,看是否其中有非ascii的字元(分號後的除外),很多時候是將分號寫成了中文下的分號了,改成英文下的分號就可以了,再看看程式。

2樓:匿名使用者

一般是你的程式越界或者溢位了

組合語言編譯提示out of memory(記憶體溢位)

3樓:永恆

data  segment

data1  db        98,80,68,55,78data2  db        5 dup(0)data  ends

stacks  segment                            ; 棧段的名稱用了保留字stack

dw        200 dup(?)

stacks  ends

code  segment

assume    cs:code,ds:data,ss:stacks     ; 這裡出錯,用了全形的逗號

start:  mov       ax,datamov       ds,ax

mov       cx,05

lea       si,data1

lea       di,data2

lp:  mov       al,[si]cmp       al,90

jae       l1

cmp       al,80

jae       l2

cmp       al,70

jae       l3

cmp       al,60

jae       l4

inc       byte ptr[di+4]l1:  inc       byte ptr[di]jmp       next

l2:  inc       byte ptr[di+1]jmp       next

l3:  inc       byte ptr[di+2]jmp       next

l4:  inc       byte ptr[di+3]next:  inc       si

loop      lp

mov       ah,4ch

int       21h

code  ends

end       start

已除錯通過。

關於組合語言問題入棧出棧什麼用,組合語言中入棧出棧問題

組合語言中堆疊的操作有專門的語句指令。入棧指令是 push 出棧指令是 pop 比如 mov a,30h 將乙個壓縮bcd碼送累加器apush acc 壓棧保護 anl a,0fh 保留低四位 mov 30h,a 回送給30h pop acc 出棧 swap a 高低四位互換 anl a,0fh 保...

微控制器用組合語言程式設計的時候才會用到指令集嗎 ,指令集怎麼運用

指令集怎麼運用?用組合語言程式設計的時候,必須用指令集中的指令。用指令集,就像查字典一樣。用組合語言程式設計的時候才會用到指令集嗎?不程式設計的時候,也可以翻翻看。是的,用彙編程式設計時你將直接用到指令集的彙編形式,用c程式設計編譯後也會生成各類微控制器相應的指令集方式 機器語言了 指令集就是由二進...

組合語言壓棧出棧延時問題,組合語言中的棧,壓棧,出棧是什麼意思

壓棧並不改變r2的值,外層迴圈中djnz r2一次,r2就減1,而push 則就是保持這個值在delay3實現延時。組合語言中的棧,壓棧,出棧是什麼意思 就像乙個裝桌球的盒子,只有乙個口能開啟 裡面乙個球不放,就是空棧 往裡面放乙個球,就是壓棧 從裡邊拿乙個球,就是出棧 都放滿了,就是滿棧,再放就會...