dos系统功能调用的屏幕显示字符是( )号调用_四、WIN10模拟DOS环境之8086汇编实战...
生活随笔
收集整理的這篇文章主要介紹了
dos系统功能调用的屏幕显示字符是( )号调用_四、WIN10模拟DOS环境之8086汇编实战...
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1、開發環境的搭建
(1)下載工具
DOSBox(DOS模擬器):https://www.dosbox.com/download.php?main=1
masm(匯編圖形化環境):https://www.jb51.net/softs/709793.html
(2)安裝
(1)DOSBox下載完成后默認安裝就可以
(2)把masm包解壓,例如如下放在D盤
(3)雙擊修改DOSBox安裝目錄下的DOSBox 0.74-3 Options.bat文件做如下修改
(4)打開DOSBox,輸入一下畫紅線的命令
如上圖輸入debug -r 有如上顯示開發環境就搭建好了
二、開發實戰例子
(1)實戰hello world
datas segment
buf db'Hello, World!$';這里用內存存放bai字節數據 'hellow world!',$用來du判斷字符串是否輸出zhi完畢
datas endsstacks segment stackdb 200 dup(0);將200個以字節為單位的空間填0stacks endscodes segmentassume cs:codes,ds:datas,ss:stacksstart:mov ax,datasmov ds,axmov dx,seg buf;這里把數據段的地址放到數據段寄存器ds中lea dx,buf;dx中放將要顯示數據的偏移地址mov ah,09hint 21h;調用21號中斷的9號功能來顯示字符串mov ah,4chint 21h;程序返回codes endsend start(1)把上面的代碼保存成 hello.asm
(2)放到D:masm目錄下
(3)編譯masm hello.asm
(4) 連接link hello.obj,
(5)執行hello就會運行出Hello,World!
如下截圖
(2)用子程序實現將從鍵盤輸入的一組字符串中的小寫字母改為大寫字母
data segment string db 30 dup('$')data endscode segment assume cs:code,ds:data main proc far start: mov ax,data mov ds,ax ;輸入字符串 mov dx,offset string mov ah,10 int 21h mov ah,2 mov dl,0dh int 21h mov dl,0ah int 21h call trans;調用大小寫轉換子程序 mov ah,9 lea dx,string+2;注意不能用mov dx,offset string, int 21h mov ah,4ch int 21h main endp ;大小寫轉換子程序 trans proc near lea si,string+2 mov cl,string+1 check: cmp cl,0 jz done mov al,[si] cmp al,'Z' jl next1 jg next2 next1: dec cl inc si jmp check next2: sub al,'a'-'A' mov [si],al dec cl inc si jmp check done: ret;子程序返回 trans endpcode ends end start總結
以上是生活随笔為你收集整理的dos系统功能调用的屏幕显示字符是( )号调用_四、WIN10模拟DOS环境之8086汇编实战...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 计算机文化基础第三版龙天才课后答案,龙天
- 下一篇: C语言显示相位的程序,【图片】求助大佬用