CODE SEGMENT ASSUME CS:CODE START:MOV AX,0B800H ;顯存的首地址 MOV DS,AX ;將AX放到DS數據斷中 MOV BX,0 ;將0賦值到BX,因爲蟲子是從屏幕的最初位置開始 MOV CX,7 ;循環次數爲7次,即蟲身長度爲7 L01:MOV BYTE PTR [BX],15 ;蟲身的ASCII爲15(這個循環初始化蟲的形狀) MOV BYTE PTR [BX+1],0EH ;蟲身的顏色,0爲背景色,0對應的ASCII爲0000即黑色;E爲前景色,E對應的ASCII碼爲1110即黃色 INC BX ;增加蟲身的長度,前面循環次數爲7,所以蟲身長度爲7個ASCII碼15 INC BX LOOP L01 MOV BYTE PTR [BX],224 ;蟲頭的ASCII碼爲224 MOV BYTE PTR [BX+1],0AH ;蟲身顏色,0爲背景色,0對應的ASCII爲0000即黑色;A爲前景色,即文字的顏色,A對應的ASCII碼爲1010即淺綠色 MOV AH,0 ;int16中斷調用,AH爲掃描碼,AL爲字符碼 INT 16H MOV SI,0 MOV CX,200 ;蟲總共行走的總長度爲200 L02: MOV BX,0 MOV BYTE PTR [BX+SI],20H ;蟲頭的顏色,20H對應的10進製爲14,即2進制的1110,對應的顏色爲黃色 MOV BYTE PTR [BX+SI+1],0 ;背景色,0對應的IRGB顏色爲黑色 MOV BX,14 MOV BYTE PTR [BX+SI],15 ;蟲身的ASCII爲15 MOV BYTE PTR [BX+SI+1],0EH ;蟲身的顏色,0爲背景色,0對應的ASCII爲0000即黑色;E爲前景色,E對應的ASCII碼爲1110即黃色 MOV BX,16 MOV BYTE PTR [BX+SI],224 ;蟲頭的ASCII碼爲224 MOV BYTE PTR [BX+SI+1],0AH ;蟲身顏色,0爲背景色,0對應的ASCII爲0000即黑色;A爲前景色,即文字的顏色,A對應的ASCII碼爲1010即淺綠色 INC SI ;SI自加,讓蟲自動向前走 INC SI MOV AH,0 ;int16中斷調用,AH爲掃描碼,AL爲字符碼 INT 16H LOOP L02 MOV AH,0 INT 16H MOV AH,4CH INT 21H CODE ENDS END START
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章