IDE : Masm for Windows 集成實驗環境 2015
OS : Windows 10 x64
typesetting : Markdown
blog : my.oschina.net/zhichengjiu
code
datas segment
;數據段代碼
datas ends
stacks segment
;堆棧段代碼
stacks ends
codes segment
assume cs:codes,ds:datas,ss:stacks
start:
mov ax,datas
mov ds,ax
;代碼段代碼
call far ptr func
mov ax,1234h
mov bx,5678h
func:
mov ax,9012h
pop bx ;bx存的是mov ax,1234h 的IP
pop ax ;ax存的是mov ax,1234h 的CS
mov ah,4ch
int 21h
codes ends
end start
debug
more knowledge
- call far ptr 標號,執行這個命令的過程:
- 將call far ptr讀入指令緩衝器
- ip自加,cs不動
- 執行指令緩衝器中的命令 call far ptr
- push cs
- push ip
- jmp far ptr 標號
reference
- [1] 王爽. 彙編語言.第3版[M]. 清華大學出版社, 2013.
resource
- [ IDE ] www.jiaminsoft.com
- [ DOSBox ] www.dosbox.com
- [ emu8086 ] www.emu8086.com
- [ 平臺 ] www.asmedu.net
- [ 平臺 ] www.oschina.net
- [ 平臺 ] gitee.com
感謝幫助 志成就 的人們。
不同芯片的彙編指令存在差異,嵌入式和信息安全領域中會見到彙編語言。
彙編/C/C++等可以進行硬件編程,要結合社會需求與個人愛好有選擇地進行學習。眼界需要開闊。
該博文僅可用於測試與參考。