freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

重點(diǎn)掌握:分支結(jié)構(gòu)程序設(shè)計(jì)循環(huán)結(jié)構(gòu)程序設(shè)計(jì)子程序結(jié)構(gòu)(參考版)

2024-10-21 10:05本頁面
  

【正文】 使光標(biāo)回車換行的子程序 dpcrlf proc ... 。進(jìn)行顯示 int 21h jmp write4 write5: pop dx pop bx pop ax ret 。數(shù)據(jù)各位先高位后低位彈出堆棧 cmp dl,10 。余數(shù)( 0~ 9)轉(zhuǎn)換為 ASCII碼 push dx 。數(shù)據(jù)除以 10: 247。轉(zhuǎn)向顯示 sub dx,dx 。10壓入堆棧,作為退出標(biāo)志 write3: cmp ax,0 。 mov ah,2 int 21h mov ax,bx neg ax 。AX數(shù)據(jù)暫存于 BX mov dl,39。是零,顯示 “ 0”后退出 mov ah,2 int 21h jmp write5 write1: jns write2 。039。取出顯示數(shù)據(jù) test ax,ax 。顯示有符號(hào) 10進(jìn)制數(shù)的通用子程序 。調(diào)用子程序顯示一個(gè)數(shù)據(jù) inc bx inc bx call dpcrlf 。共享變量 .code .startup mov cx,count mov bx,offset array again: mov ax,[bx] mov wtemp,ax 。使光標(biāo)回車換行的子程序 dpcrlf proc ... 。設(shè)置出口參數(shù) pop dx pop cx pop bx ret 。繼續(xù)輸入字符 read3: cmp cx,0 jz read4 neg bx 。bx內(nèi)容乘 10 mov ah,0 add bx,ax 。是 0~ 9之間的字符,則轉(zhuǎn)換為二進(jìn)制數(shù) 。939。0‘ 。非 “ + ” 和 “ - ” ,轉(zhuǎn)read2 mov cx,1 read1: mov ah,1 。 。是 “ + ” ,繼續(xù)輸入字符 jz read1 cmp al,39。+39。CX為正負(fù)標(biāo)志, 0為正,- 1為負(fù) mov ah,1 。說明:負(fù)數(shù)用 “ - ” 引導(dǎo),正數(shù)用 “ + ” 引導(dǎo)或直接輸入;數(shù)據(jù)范圍是+ 32767~- 32768 read proc push bx push cx push dx xor bx,bx 。輸入有符號(hào) 10進(jìn)制數(shù)的通用子程序 。將出口參數(shù)存放緩沖區(qū) inc bx inc bx call dpcrlf 。預(yù)留數(shù)據(jù)存儲(chǔ)空間 .code .startup mov cx,count mov bx,offset array again: call read 。遞歸子程序也是可重入子程序。 ? 子程序的重入不同于子程序的遞歸。存入出口參數(shù) N! pop bp pop ax ret fact endp 55 子程序的重入 ? 子程序的重入是指子程序被中斷后又被中斷服務(wù)程序所調(diào)用,能夠重入的子程序稱為可重入子程序。調(diào)用遞歸子程序求 (N1)! pop ax mul word ptr [bp+6] 。N= 0,N!= 1 jmp fact2 fact1: dec ax 。取入口參數(shù) N cmp ax,0 jne fact1 。入口參數(shù):壓入 N 。出口參數(shù): N! .exit 0 例 : 。入口參數(shù): N call fact 。因?yàn)閿?shù)據(jù)區(qū)與子程序都在代碼段,所以利用了換碼指令 XLAT的另一種助記格式(寫出指向緩沖區(qū)的變量名,目的是便于指明段超越前綴)。子程序返回 。換碼: AL←CS:[BX + AL],注意數(shù)據(jù)在代碼段 CS mov dl,al 。BX指向 ASCII碼表 and al,0fh 。子程序調(diào)用(嵌套) pop cx pop ax ret ALdisp endp 例 :嵌套子程序 。子程序調(diào)用(嵌套) pop ax 。暫存 ax mov cl,4 shr al,cl 。SS:[BP+4]指向元素個(gè)數(shù) xor al,al sumc: add al,[bx] inc bx loop sumc pop cx pop bx pop bp ret checksumc endp 46 子程序的嵌套 子程序內(nèi)包含有子程序的調(diào)用就是子程序嵌套沒有什么特殊要求 ALdisp proc push ax push cx 。利用 BP間接尋址存取參數(shù) push bx push cx mov bx,[bp+6] 。求和 inc bx loop sumb mov result,al 。BX← 數(shù)組的偏移地址 mov cx,count 。子程序 checksumb proc push ax push bx push cx xor al,al 。指向下一個(gè)字節(jié) loop suma ret checksuma endp end ? 主程序和子程序直接采用同一個(gè)變量名共享同一個(gè)變量,實(shí)現(xiàn)參數(shù)的傳遞 ? 不同模塊間共享時(shí),需要聲明 例 : 入口參數(shù): count=元素個(gè)數(shù), array=數(shù)組名(含段地址:偏移地址) 出口參數(shù): result=校驗(yàn)和 用變量傳遞參數(shù) 。累加器清 0 suma: add al,[bx] 。調(diào)用求和過程 mov result,al 。BX← 數(shù)組的偏移地址 mov cx,count 。 ? 子程序?qū)в谐隹趨?shù)的寄存器不能保護(hù)和恢復(fù)(主程序視具體情況進(jìn)行保護(hù)) ? 子程序?qū)в腥肟趨?shù)的寄存器可以保護(hù),也可以不保護(hù);但最
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1