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

正文內(nèi)容

ibm—pc匯編語言程序設(shè)計習(xí)題參考答案(編輯修改稿)

2025-05-04 05:54 本頁面
 

【文章內(nèi)容簡介】 無定義,SF=0,ZF=0,PF=0(3) OR BX, VALUE ;(BX)=0FBH,CF、OF都為0,AF無定義,SF=1,ZF=0,PF=0(4) XOR BX, 0FFH ;(BX)=1CH,CF、OF都為0,AF無定義,SF=0,ZF=0,PF=0(5) AND BX, 0 ;(BX)=00H,CF、OF都為0,AF無定義,SF=0,ZF=1,PF=1(6) TEST BX, 01H ;(BX)=0E3H,CF、OF都為0,AF無定義,SF=1,ZF=0,PF=0答:見注釋。 試寫出執(zhí)行下列指令序列后BX寄存器的內(nèi)容。執(zhí)行前(BX)=6D16H。MOV CL, 7SHR BX, CL答:(BX)=00DAH。 試用移位指令把十進(jìn)制數(shù)+53和49分別乘以2。它們應(yīng)該用什么指令?得到的結(jié)果是什么?如果要除以2呢?答:MOV AL, 53SAL AL, 1 ;(AL)=(+53*2)=6AHMOV AL, 49SAL AL, 1 ;(AL)=(49*2)=9EHMOV AL, 53SAR AL, 1 ;(AL)=(53/2)= 1AHMOV AL, 49SAR AL, 1 ;(AL)=(49/2)=0E7H 試分析下面的程序段完成什么功能?MOV CL, 04SHL DX, CLMOV BL, AHSHL AX, CLSHR BL, CLOR DL, BL答:本程序段將 ((DX),(AX)) 的雙字同時左移4位,即將此雙字乘以10H (16)。 假定(DX)=0B9H,(CL)=3,(CF)=1,確定下列各條指令單獨執(zhí)行后DX中的值。(1) SHR DX, 1 ;(DX)=05CH(2) SAR DX, CL ;(DX)=17H(3) SHL DX, CL ;(DX)=5C8H(4) SHL DL, 1 ;(DX)=72H(5) ROR DX, CL ;(DX)=2017H(6) ROL DL, CL ;(DX)=0CDH(7) SAL DH, 1 ;(DX)=0B9H(8) RCL DX, CL ;(DX)=2CCH(4) RCR DL, 1 ;(DX)=0DCH答:見注釋。 下列程序段執(zhí)行完后,BX寄存器的內(nèi)容是什么?MOV CL, 3MOV BX, 0B7HROL BX,1ROR BX, CL答:(BX)=0C02DH。 假設(shè)數(shù)據(jù)段定義如下:CONAME DB ‘SPACE EXPLORERS INC.’PRLINE DB 20 DUP (‘’)用串指令編寫程序段分別完成以下功能:(1) 從左到右把CONAME中的字符串傳送到PRLINE。(2) 從右到左把CONAME中的字符串傳送到PRLINE。(3) 把CONAME中的第3和第4個字節(jié)裝入AX。(4) 把AX寄存器的內(nèi)容存入從PRLINE+5開始的字節(jié)中。(5) 檢查CONAME字符串中有無空格字符,如有則把第一個空格字符的地址傳送給BX寄存器。答:(1) MOV CX, 20CLDMOV SI, SEG CONAMEMOV DS, SIMOV ES, SILEA SI, CONAMELEA DI, PRLINEREP MOVSB(2) MOV CX, 20STDMOV SI, SEG CONAMEMOV DS, SIMOV ES, SILEA SI, CONAMEADD SI, 201LEA DI, PRLINEADD DI, 201REP MOVSB(3) MOV AX, WORD PTR CONAME+31(4) MOV WORD PTR PRLINE +5, AX(5) MOV AL, ‘ ’ ;空格的ASCII碼送AL寄存器CLDMOV DI, SEG CONAMEMOV ES, DILEA DI, CONAMEREPNE SCASBJNE NEXTDEC DIMOV BX, DINEXT: ┇ 編寫程序段,把字符串STRING中的‘a(chǎn)mp?!址每崭穹妗TRING DB ‘The date is FEBamp。03’答:程序段如下:MOV CX, 18MOV AL, ‘a(chǎn)mp?!疌LDMOV DI, SEG STRINGMOV ES, DILEA DI, STRINGREPNE SCASBJNE NEXTDEC DIMOV ES:BYTE PTR [DI], ‘ ’ ;送空格符NEXT: ┇ 假設(shè)數(shù)據(jù)段中數(shù)據(jù)定義如下:STUDENT_NAME DB 30 DUP (?)STUDENT_ADDR DB 9 DUP (?)PRINT_LINE DB 132 DUP (?)分別編寫下列程序段:(1) 用空格符清除PRINT_LINE域。(2) 在STUDENT_ADDR中查找第一個‘’。(3) 在STUDENT_ADDR中查找最后一個‘’。(4) 如果STUDENT_NAME域中全是空格符時,填入‘*’。(5) 把STUDENT_NAME移到PRINT_LINE的前30個字節(jié)中,把STUDENT_ ADDR移到PRINT_LINE的后9個字節(jié)中。答:公共的程序段如下:MOV DI, DSMOV ES, DI(1) MOV CX, 132MOV AL., ‘ ’ ;空格的ASCII碼送AL寄存器CLDLEA DI, PRINT_LINEREP STOSB(2) MOV CX, 9MOV AL., ‘’CLDLEA DI, STUDENT_ ADDRREPNE SCASBJNE NO_DASHDEC DINO_DASH: ┇(3) MOV CX, 9MOV AL., ‘’STDLEA DI, STUDENT_ ADDRADD DI, 91REPNE SCASBJNE NO_DASHINC DINO_DASH: ┇(4) MOV CX, 30MOV AL, ‘ ’ ;空格的ASCII碼送AL寄存器CLDLEA DI, STUDENT_NAMEREPE SCASBJNE NEXTMOV CX, 30MOV AL, ‘*’ ;“*”的ASCII碼送AL寄存器LEA DI, STUDENT_NAMEREP STOSBNEXT: ┇(5) MOV CX, 30CLDLEA SI, STUDENT_NAMELEA DI, PRINT_LINEREP MOVSBMOV CX, 9STDLEA SI, STUDENT_ADDR+91LEA DI, PRINT_LINE+1321REP MOVSB 編寫一程序段:比較兩個5字節(jié)的字符串OLDS和NEWS,如果OLDS字符串不同于NEWS字符串則執(zhí)行NEW_LESS;否則順序執(zhí)行程序。答:程序段如下:MOV CX, 5CLDMOV DI, SEG OLDSMOV DS, DIMOV ES, DILEA SI, OLDSLEA DI, NEWSREPE CMPSBJNE NEW_LESS┇NEW_LESS: ┇ 假定AX和BX中的內(nèi)容為帶符號數(shù),CX和DX中的內(nèi)容為無符號數(shù),請用比較指令和條件轉(zhuǎn)移指令實現(xiàn)以下判斷:(1) 若DX的內(nèi)容超過CX的內(nèi)容,則轉(zhuǎn)去執(zhí)行EXCEED。(2) 若BX的內(nèi)容大于AX的內(nèi)容,則轉(zhuǎn)去執(zhí)行EXCEED。(3) 若CX的內(nèi)容等于0,則轉(zhuǎn)去執(zhí)行ZERO。(4) BX與AX的內(nèi)容相比較是否產(chǎn)生溢出?若溢出則轉(zhuǎn)OVERFLOW。(5) 若BX的內(nèi)容小于等于AX的內(nèi)容,則轉(zhuǎn)EQ_SMA。(6) 若DX的內(nèi)容低于等于CX的內(nèi)容,則轉(zhuǎn)EQ_SMA。答:(1) CMP DX, CXJA EXCEED(2) CMP BX, AXJG EXCEED(3) JCXZ ZERO(4) CMP BX, AXJO OVERFLOW(5) CMP BX, AXJLE EQ_SMA(6) CMP DX, CXJBE EQ_SMA 試分析下列程序段:ADD AX, BXJNO L1JNC L2SUB AX, BXJNC L3JNO L4JMP SHORT L5如果AX和BX的內(nèi)容給定如下:AX BX(1) 147BH 80DCH(2) B568H 42C8H(3) 42C8H 608DH (4) D023H 9FD0H(5) 94B7H B568H問該程序分別在上面5種情況下執(zhí)行后,程序轉(zhuǎn)向哪里?答:(1) 轉(zhuǎn)向L1(2) 轉(zhuǎn)向L1(3) 轉(zhuǎn)向L2(4) 轉(zhuǎn)向L5 ;因為加法指令后AX中已經(jīng)是6FF3H(5) 轉(zhuǎn)向L5 ;因為加法指令后AX中已經(jīng)是4A14H 指令CMP AX, BX后面跟著一條格式為J… L1的條件轉(zhuǎn)移指令,其中…可以是B、NB、BE、NBE、L、NL、LE、NLE中的任意一個。如果AX和BX的內(nèi)容給定如下:AX BX(1) 1F52H 1F52H(2) 88C9H 88C9H(3) FF82H 007EH (4) 58BAH 020EH(5) FFC5H FF8BH(6) 09A0H 1E97H(7) 8AEAH FC29H(8) D367H 32A6H問以上8條轉(zhuǎn)移指令中的哪幾條將引起轉(zhuǎn)移到L1?答:(1) JNB、JBE、JNL、JLE(2) JNB、JBE、JNL、JLE(3) JNB、JNBE、JL、JLE(4) JNB、JNBE、JNL、JNLE(5) JNB、JNBE、JL、JLE(6) JB、JBE、JL、JLE(7) JB、JBE、JNL、JNLE(8) JNB、JNBE、JL、JLE 假設(shè)X和X+2單元的內(nèi)容為雙精度數(shù)p,Y和Y+2單元的內(nèi)容為雙精度數(shù)q,(X和Y為低位字)試說明下列程序段做什么工作?MOV DX, X+2MOV AX, XADD AX, XADC DX, X+2CMP DX, Y+2JL L2JG L1CMP AX, YJBE L2L1: MOV AX, 1JMP SHORT EXITL2: MOV AX, 2EXIT:INT 20H答:此程序段判斷p*2>q,則使(AX)=1后退出;p*2≤q,則使(AX)=2后退出。 要求測試在STATUS中的一個字節(jié),如果第5位均為1則轉(zhuǎn)移到ROUTINE_1;如果此三位中有兩位為1則轉(zhuǎn)移到ROUTINE_2;如果此三位中只有一位為1則轉(zhuǎn)移到ROUTINE_3;如果此三位全為0則轉(zhuǎn)移到ROUTINE_4。試畫出流程圖,并編制相應(yīng)的程序段。全為0嗎?二位為1嗎?僅一位為1執(zhí)行ROUTINE_3轉(zhuǎn)去執(zhí)行ROUTINE_4NNYY程序開始(AL)←(STATUS)只保留第1,3,5位轉(zhuǎn)去執(zhí)行ROUTINE_2全為1嗎?NY轉(zhuǎn)去執(zhí)行ROUTINE_1執(zhí)行EXIT程序結(jié)束答:程序段如下:MOV AL, STATUSAND AL, 00010101B ;只保留第5位JZ ROUTINE_4 ;3位全為0轉(zhuǎn)ROUTINE_4JPE ROUTINE_2 ;兩位為1轉(zhuǎn)ROUTINE_2CMP AL, 00010101BJZ ROUTINE_1 ;3位全為1轉(zhuǎn)ROUTINE_1ROUTINE_3: ┇ ;僅一位為1執(zhí)行ROUTINE_3JMP EXITROUTINE_1: ┇JMP EXITROUTINE_2: ┇JMP EXITROUTINE_4: ┇EXIT: INT 20H 在下列程序的括號中分別填入如下指令:(1) LOOP L20(2) LOOPE L20(3) LOOPNE L20試說明在三種情況下,當(dāng)程序執(zhí)行完后,AX、BX、CX、DX四個寄存器的內(nèi)容分別是什么?TITLE CODESG SEGMENTASSUME CS:CODESG, DS: CODSEG, SS: CODSEGORG 100HBEGIN: MOV AX, 01MOV BX, 02MOV DX, 03MOV CX, 04L20: INC AXADD BX, AXSHR DX, 1( )RETCODESG ENDSEND BEGIN答:(1) (AX)=5H,(BX)=10H,(CX)=0H,(DX)=0H(2) (AX)=2H,(BX)=4H,(CX)=3H,(DX)=1H(3) (AX)=3H,(BX)=7H,(CX)=2H,(DX)=0H 考慮以下的調(diào)用序列:(1) MAIN調(diào)用NEAR的SUBA過程(返回的偏移地址為0400);(2)
點擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1