汇编: 用int中断改变ip,实现loop循环
生活随笔
收集整理的這篇文章主要介紹了
汇编: 用int中断改变ip,实现loop循环
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
在屏幕中間顯示一行"!"?
assume cs:code, ds:data, ss:stackdata segmentdb 128 dup(0) data endsstack segment stackdb 128 dup(0) stack endscode segmentstart: mov bx, stackmov ss, bxmov sp, 129call cpy_new_7CHcall set_new_7CHmov bx, 0B800Hmov es, bxmov di, 160*12 ; 屏幕中間mov bx, OFFSET s - OFFSET semov cx, 80s: mov byte ptr es:[di], '!'mov byte ptr es:[di+1], 00000100Badd di,2 int 73H se: nop ; 跳轉長度 = 標號出 - loop指令后第一個字節地址mov ax, 4C00Hint 21H;============================================ set_new_7CH:mov bx, 0mov es, bxmov word ptr es:[73H*4], 7E00Hmov word ptr es:[73H*4+2], 0ret;============================================ new_7CH:push bp ; bp, ip, cs, pushfmov bp, spdec cxjcxz newRetadd ss:[bp+2],bx;dec cx;jcxz newRet;add ss:[sp],bxnewRet:pop bpiretnew_7CH_end: nop;============================================ cpy_new_7CH:mov bx, csmov ds, bxmov si, OFFSET new_7CHmov bx, 0mov es, bxmov di, 7E00Hmov cx, OFFSET new_7CH_end - new_7CHcldrep movsbretcode endsend start總結
以上是生活随笔為你收集整理的汇编: 用int中断改变ip,实现loop循环的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java: ThreadLocal简介
- 下一篇: java结构图