国产成人AV一区二区三区在线_国产成人精品无码免费看_国产成人无码无卡在线观看_国产精品成人A区在线观看_国产日韩精品欧美一区_国产亚洲精品自在久久蜜TV_久草热久草热线频97精品_久久久噜噜噜久久中文福利_久久婷婷五月综合色国产免费观看_日日狠狠久久偷偷色综合0,九一桃色在线观看,久久97精品久久久久久久不卡,国产成人精品亚洲精品

8086匯編語言問題

訪客2024-11-25 21:55:461

TABLE中連續(xù)16個(gè)單元中存放著0-15的平方值,使用鍵盤輸入一個(gè)數(shù)字X(0≤X≤15),,并將結(jié)果顯示在屏幕中,。

自己嘗試編寫了一下,主要在于輸出到屏幕不知道怎么處理,。 該怎么修改,?8086匯編語言問題

你程序的問題是你沒有計(jì)算機(jī)中處理字符/字串/數(shù)組的理論基礎(chǔ)

就對輸入而言,你的

MOV AH,1

int 21H

它只能輸入一個(gè)字符(且前面的MOV AH,0完全多余),不是輸入一個(gè)數(shù)字

如你輸入一個(gè)1

那么 AL中是它的ASCII碼 31H

且你不能輸入兩位數(shù)字的

而輸出更不用說了,它要將內(nèi)部的數(shù)值先轉(zhuǎn)成BCD碼,然后按字符輸出的

你的程序要求有一定的難度的

給你參考:

1.輸入子程序

;輸入數(shù)據(jù)子程序,以空格或回車結(jié)束;結(jié)果在ax中input  PROCpush bxpush cxxor bx,bxinput1:mov ah,1int 21Hcmp al,0dhje input2cmp al,20hje input2sub al,'0'mov cl,alxor ch,chmov ax,bxmov bx,10mul bxmov bx,axadd bx,cxjmp input1input2:mov ax,bxpop cxpop bxretinput ENDP

///輸出子程序,輸出數(shù)在BX中,支持負(fù)數(shù)DISPBXD  PROC  push sipush dxpush cxpush bxpush axCMP BX,0  JGE ZS  MOV DL,'-'  MOV AH,2  INT 21H  ZS:MOVSI,10XORCX,CXMOVAX,BXNEXT:MOVDX,0DIVSIPUSHDXINCCXCMPAX,0JNZNEXTOUTP:POPDXADDDL,30HMOVAH,2INT21HLOOPOUTP

mov dl,0dhmov ah,2int 21Hmov dl,0ahmov ah,2int 21H

pop axpop bxpop cxpop dxpop si  RETDISPBXDENDP

當(dāng)然,你可以在這個(gè)基礎(chǔ)上簡化下

文章評論