《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 解決方案 > 匯編源碼之跑動的男孩

匯編源碼之跑動的男孩

2017-07-23
關鍵詞: 匯編語言

一個跑動的男孩,生成.exe文件后剛1K多,這個程序是我在大2的時候研究出來的!

;該程序沒有用到時間延時,而是巧妙的用了LOOP指令使圖形字符不斷的覆蓋,就可以達到了跑動的效果!

;如果在DOS命令提示符下執行.exe,退出時會顯示我的個人資料!

;該程序用TASM5.0和MASM5.0都可以編譯通過!

;大家試試看吧!祝好運!

.model small
  ;-------------------------------------------------------------------------------
.data
;
;男孩的跑動圖形數據
;frame 1 data
;
boyd db 8 dup(0) ;ascii 80h (upper left)
db 8 dup(0) ;ascii 81h
db 0,1,7,31,4 dup(63) ;ascii 82h
db 120,252,244,240,240,240,176,176 ;ascii 83h
db 8 dup (0) ;ascii 84h
db 0,1,3,7,14,14,12,1 ;ascii 85h
db 31,207,231,247,127,126,254,254 ;ascii 86h
db 248,184,200,240,128,0,8,120 ;ascii 87h
db 0,1,3,7,15,14,12,0 ;ascii 88h
db 7,207,207,223,255,255,239,195 ;ascii 89h
db 254,254,255,247,227,128,128,128 ;ascii 8ah
db 120,240,192,128,4 dup(0) ;ascii 8bh
db 8 dup(0) ;ascii 8ch
db 3,3,1,1,4 dup(0) ;ascii 8dh
db 131,135,207,254,252,240,96,0 ;ascii 8eh
db 8 dup(0) ;ascii 8fh
;
;
;frame 2 data
;
db 8 dup(0) ;ascii 90h
db 8 dup(0) ;ascii 91h
db 5 dup(0),3,15,31 ;ascii 92h
db 3 dup (0),124,2 dup(254),252,248 ;ascii 93h
db 8 dup(0) ;ascii 94h
db 3 dup(0),1,3,7,6,6 ;ascii 95h
db 63,63,31,159,207,231,255,127 ;ascii 96h
db 248,248,216,216,252,220,228,248 ;ascii 97h
db 8 dup(0) ;ascii 98h
db 6,15,63,127,255,255,127,127 ;ascii 99h
db 254,3 dup(252),253,223,143,128 ;ascii 9ah
db 0,0,96,224,224,192,128,0 ;ascii 9bh
db 0,1,1,5 dup(0) ;ascii 9ch
db 255,239,207,30,127,255,252,0 ;ascii 9dh
db 192,192,0,0,128,0,0,0 ;ascii 9eh
db 8 dup(0) ;ascii 9fh
;
;
;frame 3 data
;
db 8 dup(0) ;ascii a0h
db 8 dup(0) ;ascii a1h
db 0,0,3,7,4 dup(15) ;ascii a2h
db 0,126,3 dup(255),252,236,236 ;ascii a3h
db 8 dup(0) ;ascii a4h
db 7 dup(0),1 ;ascii a5h
db 15,7,1,1,7,63,255,255 ;ascii a6h
db 254,238,242,252,224,128,0,0 ;ascii a7h
db 7 dup(0),1 ;ascii a8h
db 1,3,7,15,31,63,255,252 ;ascii a9h
db 255,254,255,255,252,255,255,252 ;ascii aah
db 0,0,128,128,0,128,0,0 ;ascii abh
db 3,15,30,30,28,30,30,0 ;ascii ach
db 192,7 dup(0) ;ascii adh
db 62,14,6 dup(0) ;ascii aeh
db 8 dup(0) ;ascii afh
;
;
;frame 4 data
;
db 8 dup(0) ;ascii b0h
db 7 dup(0),13 ;ascii b1h
db 1,7,4 dup(15),7,199 ;ascii b2h
db 254,255,255,253,252,236,236,254 ;ascii b3h
db 5 dup(0),63,254,254 ;ascii b4h
db 31,30,3 dup(0),7,31,63 ;ascii b5h
db 227,121,63,63,254,3 dup(255) ;ascii b6h
db 238,242,252,0,3,135,255,252 ;ascii b7h
db 252,63,63,31,4 dup(0) ;ascii b8h
db 4 dup(255),4 dup(0) ;ascii b9h
db 240,224,192,240,248,63,31,15 ;ascii bah
db 0,0,96,224,224,192,192,128 ;ascii bbh
db 8 dup(0) ;ascii bch
db 8 dup(0) ;ascii bdh
db 6,7 dup(0) ;ascii beh
db 8 dup(0) ;ascii bfh
;
;
out_char db 'Author: HSLY',0DH,0AH
db 'From : China',0dh,0ah
db 'My Website : http://x86asm.yeah.net',0dh,0ah
db 'My E-mail : pliceman_110@163.com',0dh,0ah
db 'Time : 2002 02-14',0dh,0ah
db 'Opccupation: Student',0dh,0ah
db 'Age : 22',0dh,0ah
len_str equ $-out_char
ascii db ?
frame db ?
;-------------------------------------------------------------------------------
  ;-------------------------------------------------------------------------------
.code
start: mov ax,@data
mov ds,ax
mov es,ax
;
; 先設置使用320×200彩色圖形方式
main: mov ah,0
mov al,4
int 10h
;
; 然后設置在320×200圖形方式下的調色板顏色和背景顏色
;
mov ah,11
mov bh,1
mov bl,0
int 10h
;
mov ah,11
mov bh,0
mov bl,1
int 10h
;
; 設置中斷向量指向跑動男孩的圖形數據
;
mov al,1fh
mov dx,offset boyd
mov ah,25h
int 21h
;
;把男孩的圖形畫在顯示屏的左上角跑動
frame1: mov ascii,80h
mov frame,1
;
startfr: sub dx,dx
;
drawchar: mov ah,2 ;置光標位置
mov bh,0
int 10h
;設置男孩為黃色并在藍色背景里,并設置了男孩的高度和寬度
mov ah,9
mov cx,1
mov bl,03h
mov al,ascii
int 10h
;
inc ascii
inc dl
cmp dl,3
jna drawchar
;
mov dl,0
inc dh
cmp dh,3
jna drawchar
;
;重復顯示男孩的圖形
;
call delay ;調用跑動子程序
;
inc frame ;變換男孩顯示圖形
cmp frame,4
jna startfr
;
; 調用校驗鍵盤功能如果按任意鍵,就重新設置成為80×25的彩色方式并返回DOS和顯示我的個人資料!
mov ah,0bh
int 21h
cmp al,0ffh
jne frame1
xor dx,dx
xor bp,bp
mov ax,03
int 10h
  mov bp,offset out_char
mov cx,len_str
mov dh,0
mov dl,33
mov al,1
mov bl,0eh
mov ah,13h
int 10h
;
mov ax,4c00h
int 21h
;
;
;
delay proc
push cx
mov cx,10000
waste: loop waste
pop cx
ret
delay endp
;-------------------------------------------------------------------------------
  ;-------------------------------------------------------------------------------
.stack 100h
;---------------------


本站內容除特別聲明的原創文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創文章及圖片等內容無法一一聯系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯系電話:010-82306118;郵箱:aet@chinaaet.com。
主站蜘蛛池模板: 果冻传媒视频在线观看| 99国产精品热久久久久久| 日本福利片国产午夜久久| 蜜臀久久99精品久久久久久| japanesevideo喷潮| 亚洲AV无码精品蜜桃| 免费国产成人高清视频网站| 日本不卡在线播放| 波多野结av衣东京热无码专区| 高清国产精品久久| FREEXX性黑人大战欧美| 五月亭亭免费高清在线| 四虎成人精品在永久在线观看| 在人间免费观看未删减| 扒开美妇白臀扒挺进在线视频| 毛片a级毛片免费观看品善网 | 色老成人精品视频在线观看| 99久久夜色精品国产网站| 久久久99久久久国产自输拍| 亚洲人成无码网站久久99热国产 | 国产男人午夜视频在线观看 | 国产亚洲精品精品国产亚洲综合 | 亚洲欧美日韩在线观看看另类| 国产午夜福利在线观看视频| 国产高清视频网站| 成人激情免费视频| 日韩毛片免费看| 激情内射日本一区二区三区| 色天使亚洲综合一区二区| 蕾丝视频在线看片国产| 美女扒开内裤无遮挡网站| 成人免费激情视频| 六月婷婷中文字幕| 99视频在线免费| 77777_亚洲午夜久久多人| 三年片免费观看大全国语| 久久国产精品2020免费m3u8| 五十路在线观看| 久久亚洲精品人成综合网| 久久精品aⅴ无码中文字字幕不卡 久久精品aⅴ无码中文字字幕重口 | 女人色毛片女人色毛片中国|