實(shí)驗(yàn)二 二 分支程序設(shè)計(jì) 一、實(shí)驗(yàn)?zāi)康? 1 、學(xué)習(xí)分支程序得設(shè)計(jì)方法 2 、熟悉在 PC 機(jī)上建立、匯編、連接、調(diào)試與運(yùn)行匯編語言程序得過程 二、實(shí)驗(yàn)環(huán)境:
硬件環(huán)境
IBM/ PC 及其兼容機(jī) 軟件環(huán)境
統(tǒng) 操作系統(tǒng) DO S
編輯程序 EDIT 或其她編輯程序
序程編匯? 匯編程序 M ASM 、E XE
連接程序LIN K、EXE 序 調(diào)試程序 DEB UG 、EXE 三 、 實(shí)驗(yàn)內(nèi)容:
:
1 、在屏幕上顯示如下信息:
1 —-— —- -- -- -- —- —---— — ---- -- —-Panda
2— —- --— — --- —- —- ———- ----— —- —--Cat
?
3-——- ---- -- ---- -- -———- -——-Ra bbit
4— — -— —-— — -— —--— — --- —- -- ——--- ---Pig
5 —— ---- -- —-- —-- —- —---— —- -- —EXI T
(Pl(wèi)ea se
?。鉮 oo se 1, 2, 3,4or 5 )—- ---- 入 若輸入 1, 顯示“I like e
p panda ”后程序結(jié)束;若輸入 2, 顯示“I
lik e cat” ”后程序結(jié)束; 若輸入 3 ,顯示“I
lik e rab bit t入 ”后程序結(jié)束;若輸入 4, 顯示“I do n’t l like pig ”后程序結(jié)束; 若輸入 5 ,程序直接結(jié)束; 若輸入其它字符,顯示“You
?。餽 ess an error key !" 后程序結(jié)束. 1) 流程圖
2 )源程序 DATA SEGMENT
?。蒒FOR1 DB 0AH,0DH,”1-—-—----—-—Panda:$"
INFOR2 DB 0AH,0DH,"2—-—-——--———Cat:$”
INFOR3 DB 0AH,0DH,"3---—---——-—Rabbit;$”
?。蒒FOR4 DB 0AH,0DH,"4---—------—pig:$"
INFOR5 DB 0AH,0DH,"5--—--——--—-EXIT:$"
INFOR6 DB 0AH,0DH,”(please choose 1,2,3,4 or 5——-):$"
INFOR7 DB 0AH,0DH,"I like Panda:$"
INFOR8 DB 0AH,0DH,"I like Cat:$"
?。蒒FOR9 DB 0AH,0DH,"I like Rabbit;$"
INFOR10 DB 0AH,0DH,”I like pig:$"
?。桑蜦OR11 DB 0AH,0DH,”you press an error key?。骸?rdquo; DATA ENDS
;數(shù)據(jù)段結(jié)束 CODE SEGMENT
;代碼段開始 Y Y Y Y N N N N N 開始 選項(xiàng) 用戶輸入 Al=1 Al=2 Al=3 Al=4 Al=5 You press an error key 結(jié)束 I like panda I like cat I like rabbit I like do not
ASSUME
CS:CODE,DS:DATA
;段尋址 START: MOV AX,DATA
;將 dat(yī)a 得數(shù)據(jù)存入ax 中
?。蚈V DS,AX
;為 ds 賦值
MOV DX,OFFSET
INFOR1
;返回變量 INFOR1 段內(nèi)偏移地址【運(yùn)行后在屏幕上顯示字符 1--——--—--—-Panda:】
MOV AH,09H
INT 21H
;執(zhí)行九號功能調(diào)用
MOV DX,OFFSET
INFOR2
MOV AH,09H
INT 21H
?。停蟅 DX,OFFSET
INFOR3
MOV AH,09H
INT 21H
MOV DX,OFFSET
INFOR4
MOV AH,09H
INT 21H
?。蚈V DX,OFFSET
INFOR5
??;返回變量 INFOR5 段內(nèi)偏移地址【運(yùn)行后在屏幕上顯示字符 5—-—--——----EXIT:】
?。蚈V AH,09H
INT 21H
MOV DX,OFFSET
?。蒒FOR6
?。停希?AH,09H
INT 21H
?。蚈V AH,01H
INT 21H
CMP AL,"1’
JE
Panda
CMP AL,'2’
JE
?。胊t
CMP AL,"3’
JE
Rabbit
?。肕P AL,’4'
JE Pig
CMP AL,’5’
JE PEND
JMP Other Panda:
MOV DX,OFFSET INFOR7
MOV AH,09H
INT 21H
JMP PEND Cat:
8ROFNI TESFFO,XD VOM? H90,HA VOM? H12 TNI? JMP PEND Rabbit:
MOV DX,OFFSET INFOR9
?。停蟅 AH,09H
H12 TNI?
JMP PEND Pig:
MOV DX,OFFSET INFOR10
H90,HA VOM? INT 21H
JMP PEND Other:
MOV DX,OFFSET INFOR11
MOV AH,09H
H12 TNI?
JMP PEND PEND:
MOV AH,4CH
?。蒒T 21H CODE
ENDS
?。牛蜠 START
2、 、 從鍵盤輸入一字符,判斷該字符就是小寫字母、大寫字母、數(shù)字或其它字符.若輸入為小寫字母, 顯示“Y You
I nput a Lo wer case Letter !”;若輸入為大寫字母, 顯示“You Inp ut a Uppercase L et ter !”; 若輸入為數(shù)字,顯示“Yo ou Input a Digit !";
若輸入為其它字符,顯示“You Inpu t
Ot her Let tt er !”。
1 、 編程指導(dǎo) 字 數(shù)字 0? ? 9得ASC II 碼為30H? ?39H; 大寫字母得 ASCII 碼為 4 1H? ? 5AH,小寫字母得AS CI I碼為61H? ?7AH 。本題目將字符分為小寫字母、大寫字母、數(shù)字及其它字符,得 根據(jù)鍵入字符得 AS CII 碼值判斷其所屬類型, 并顯示相應(yīng)得信息 息. 字符串顯示使用功能號為 09H 得 得 DOS 功能調(diào)用, 接收鍵盤輸入得單個(gè)字符使為 用功能號為 01H 得 得 DOS 功能調(diào)用。
2、 流程圖及程序框圖 1)流程圖 2)源程序 DATA SEGMENT
INFOR1 DB 0AH,0DH,”Please Press Any Key to input a letter:$"
INFOR2 DB 0AH,0DH,"You input a lowercase letter! $”
INFOR3 DB 0AH,0DH,"You input a Uppercase letter!
$”
INFOR4 DB 0AH,0DH,"You input a Digit!
$"
INFOR5 DB 0AH,0DH,"You input Other letter! $” DATA ENDS CODE SEGMENT
ASSUME
CS:CODE,DS:DATA START:
MOV AX,DATA
; 顯示信息“Please Press Any Key to input a letter"得指令序列以及接收從鍵盤輸入一個(gè)字符得指令序列
?。蚈V DS,AX
MOV
DX,OFFSET
INFOR1
H90,HA
VOM?
INT
21H
MOV AH,01H
INT 21H Y Y Y Y Y Y 顯示提示信息“Please Press Any Key to input a letter” 及功能號為 1 得接收鍵盤輸入單個(gè)字符得指令序列 開始 結(jié)束(AL)<’0’ (AL)<=’9’ (AL)<’A’ (AL)<=’Z’ (AL)<’a’ (AL)<=’z’ 輸入得就是小寫字母,顯示信息 輸入得就是大寫字母,顯示信息 輸入得就是數(shù)字,顯示有關(guān)信息 輸入得就是其它字符,顯示信息
CMP
AL,’0’
?。蔅
OTHER
CMP
AL,’9’
JBE
DIGIT
CMP
AL,’A"
REHTO(shè)
BJ? "Z',LA
PMC? REPPU
EBJ? CMP
AL,’a’
JB
OTHER
"z',LA
?。蠱C? JBE
LOWER
JMP
PEND LOWER:
;顯示“You Input a Lowercase Letter!”得指令序列
MOV DX,OFFSET INFOR2
H90,HA VOM? INT 21H
出跳序程使應(yīng)后支分個(gè)一完行執(zhí)意注;
DNEP PMJ?UPPER:
??; 顯示“You Input a Uppercase Letter”得指令序列 MOV DX,OFFSET INFOR3
H90,HA VOM? H12 TNI? DNEP PMJ?DIGIT:
??; 顯示“You Input a Digit!"得指令序列 MOV DX,OFFSET INFOR4
H90,HA VOM? INT 21H
JMP PEND OTHER:
; 顯示“You Input Other Letter!”得指令序列
5ROFNI TESFFO,XD VOM? MOV AH,09H
?。?2 TNI?PEND:
MOV AH,4CH
H12 TNI?CODE
ENDS
END START
四、 心得 通過這次上機(jī)實(shí)驗(yàn), 我掌握了分支程序額設(shè)計(jì)方法, 宏定義及宏調(diào)用得基本方法,了解了小寫字母與大寫字母得ASCII 碼表示及其轉(zhuǎn)換方法,了解了數(shù)字及其她得 字符得 AS CII 碼表示方法, 進(jìn)一步掌握了調(diào)試工具得 使用方法。
推薦訪問: 程序設(shè)計(jì) 分支 實(shí)驗(yàn)在偉大祖國73華誕之際,我參加了單位組織的“光影鑄魂”主題黨日活動(dòng),集中觀看了抗美援朝題材影片《長津湖》,再一次重溫這段悲壯歷史,再一次深刻感悟偉大抗美援朝精神。1950年10月,新中國剛剛成立一年,
根據(jù)省局黨組《關(guān)于舉辦習(xí)近平談治國理政(第四卷)讀書班的通知》要求,我中心通過專題學(xué)習(xí)、專題研討以及交流分享等形式,系統(tǒng)的對《習(xí)近平談治國理政》(第四卷)進(jìn)行了深入的學(xué)習(xí)與交流,下面我就來談一談我個(gè)人
《習(xí)近平談治國理政》(第四卷)是在百年變局和世紀(jì)疫情相互疊加的大背景下,對以習(xí)近平同志為核心的黨中央治國理政重大戰(zhàn)略部署、重大理論創(chuàng)造、重大思想引領(lǐng)的系統(tǒng)呈現(xiàn)。它生動(dòng)記錄了新一代黨中央領(lǐng)導(dǎo)集體統(tǒng)籌兩個(gè)
《真抓實(shí)干做好新發(fā)展階段“三農(nóng)工作”》是《習(xí)近平談治國理政》第四卷中的文章,這是習(xí)近平總書記在2020年12月28日中央農(nóng)村工作會(huì)議上的集體學(xué)習(xí)時(shí)的講話。文章指出,我常講,領(lǐng)導(dǎo)干部要胸懷黨和國家工作大
在《習(xí)近平談治國理政》第四卷中,習(xí)近平總書記強(qiáng)調(diào),江山就是人民,人民就是江山,打江山、守江山,守的是人民的心。從嘉興南湖中駛出的小小紅船,到世界上最大的執(zhí)政黨,在中國共產(chǎn)黨的字典里,“人民”一詞從來都
黨的十八大以來,習(xí)近平總書記以馬克思主義戰(zhàn)略家的博大胸襟和深謀遠(yuǎn)慮,在治國理政和推動(dòng)全球治理中牢固樹立戰(zhàn)略意識,在不同場合多次圍繞戰(zhàn)略策略的重要性,戰(zhàn)略和策略的關(guān)系,提高戰(zhàn)略思維、堅(jiān)定戰(zhàn)略自信、強(qiáng)化戰(zhàn)
《習(xí)近平談治國理政》第四卷集中展示了以習(xí)近平同志為核心的黨中央在百年變局和世紀(jì)疫情相互疊加背景下,如何更好地堅(jiān)持和發(fā)展中國特色社會(huì)主義而進(jìn)行的生動(dòng)實(shí)踐與理論探索;對于新時(shí)代堅(jiān)持和發(fā)展什么樣的中國特色社
在黨組織的關(guān)懷下,我有幸參加了區(qū)委組織部組織的入黨積極分子培訓(xùn)班。為期一周的學(xué)習(xí),學(xué)習(xí)形式多樣,課程內(nèi)容豐富,各位專家的講解細(xì)致精彩,對于我加深對黨的創(chuàng)新理論的認(rèn)識、對黨的歷史的深入了解、對中共黨員的
《習(xí)近平談治國理政》第四卷《共建網(wǎng)上美好精神家園》一文中指出:網(wǎng)絡(luò)玩命是新形勢下社會(huì)文明的重要內(nèi)容,是建設(shè)網(wǎng)絡(luò)強(qiáng)國的重要領(lǐng)域。截至2021年12月,我國網(wǎng)民規(guī)模達(dá)10 32億,較2020年12月增長4
剛剛召開的中國共產(chǎn)黨第十九屆中央委員會(huì)第七次全體會(huì)議上討論并通過了黨的十九屆中央委員會(huì)向中國共產(chǎn)黨第二十次全國代表大會(huì)的報(bào)告、黨的十九屆中央紀(jì)律檢查委員會(huì)向中國共產(chǎn)黨第二十次全國代表大會(huì)的工作報(bào)告和《