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

正文內(nèi)容

微機原理與接口技術(shù)1-8習(xí)題解答王玉良(編輯修改稿)

2025-06-27 22:25 本頁面
 

【文章內(nèi)容簡介】 4CH INT 21HCODE ENDS END START 4.把地址偏移量為STRG1單元開始的128個單元的內(nèi)容傳送到地址偏移量為STRG2開始的單元中。 解 DATA SEGMENT STRGl DB XXH,XXH,XXH,….XXH  ;1 28個數(shù)據(jù) COUNT EOU$-STRGl STRG2 DB 128 DUP(?) DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START:MOV AX,DATA MOV DS,AX MOV SI,OFFSET STRG1 MOV DI,OFFSET STRG2 MOV CX,COUNT CLD REP MOVSB MOV AH,4CH INT 21 H CODE ENDS END START 5.寄存器SI做地址指針,自SI所指的內(nèi)存單元開始連續(xù)存放三個無符號數(shù)(以字為單位),編一程序求它們的和,并將結(jié)果存放在這三個數(shù)之后的單元中。解DATA SEGMENTBUF DW XXH,YYH,ZZHSUM DW ?,?DATA ENDSCODE SEGMENT ASSUME CS:CODE,DS:DATASTART:MOV AX,DATA MOV DS,AX MOV SI,OFFSET BUF MOV DI,OFFSET SUM MOV AX,[SI]ADD AX,[SI+2]MOV [DI],AXMOV AX,0ADDC AX,0MOV [DI+2],AXMOV AX,[DI] ADDC AX,[SI+4] MOV [DI],AXMOV AX,0ADDC AX,[DI+2]MOV [DI+2],AX MOV AH,4CH INT 21HCODE ENDS END START6.讀下面程序段,問:在什么情況下本段程序的執(zhí)行結(jié)果是AH=0?START:IN   AL,5FH MOV AH,0 JZ BRCH MOV AH,0 JMP STOPBRCH: MOV AH,0FFHSTOP: INT 20H解 當標志寄存器的ZF=0時,執(zhí)行結(jié)果AH=0。(JZ之前的兩條指令對零標志沒有影響)7.下面語句在存儲器中分別為變量分配多少字節(jié)?0NE DW 10TW0 DW 4 DUP(?),5THREE DB 2 DUP(?,8 DUP(0))COUNT EQU 10FOUR DD COUNT DUP(?)FIVE DB ‘HOW ARE YOU?’ 解ONE DW 10 ;為ONE分配2個字節(jié) TWO DW 4 DUP(?),5 ;為TWO分配10個字節(jié) THREE DB 2 DUP(?,8 DUP(0)) ;為THREE分配18個字節(jié) COUNT EQU 10 ;不給COUNT分配存儲單元 FOUR DD COUNT DUP(?) ;為FOUR分配40個字節(jié) FIVE DB ‘HOW ARE YOU?’ ;為FIVE分配12個字節(jié) 8.數(shù)據(jù)定義語句如下所示: FIRST DB 90H,5FH,6EH,69H SECOND DB 5 DUP(?) THIRD DB 5 DUP(?) FORTH DB DUP(?) 自FIRST單元開始存放的是一個四字節(jié)的十六進制數(shù)(低位字節(jié)在前),要求: (1)編一段程序?qū)⑦@個數(shù)左移兩位后存放到自SECOND開始的單元(注意保留移出部分); (2)編一段程序?qū)⑦@個數(shù)右移兩位后存放到自THIRD開始的單元(注意保留移出部分); (3)編一段程序?qū)⑦@個數(shù)求補后存放到自FORTH開始的單元。解DATA SEGMENTFIRST DB 90H,5FH,6EH,69HSECOND DB 5 DUP (?)THIRD DB 5 DUP (?)FORTH DB DUP (?)DATA ENDSCODE SEGMENT ASSUME CS:CODE,DS:DATASTART: MOV AX,DATA MOV DS,AX CALL SUBP1 CALL SUBP2 CALL SUBP3 MOV AH,4CH INT 21HSUBP1 PROC MOV SI,OFFSET FIRST MOV DI,OFFSET SECOND XOR BL,BL MOV CL,2 MOV AX,[SI]MOV DX,[SI+2]LOP1: SHL AX,1 RCL DX,1 RCL BL,1 DEC CL JNZ LOP1 MOV [DI],AX MOV [DI+2],DX MOV [DI+4],BL RET SUBP1 ENDP SUBP2 PROC MOV SI,OFFSET FIRST MOV DI,OFFSET THIRD XOR BL,BL MOV CL,2 MOV AX,[SI] MOV DX,[SI+2]LOP2: SHR DX,1 RCR AX,1 RCR BL,1 DEC CL JNZ LOP2 MOV [DI],BL MOV [DI+1],AX MOV [DI+3],DX RET SUBP2 ENDP SUBP3 PROC MOV SI,OFFSET FIRST MOV DI,OFFSET FORTH MOV AX,[SI] MOV DX,[SI+2] NOT AXNOT DXADD AX,1 ADC DX,0 MOV [DI],AX MOV [DI+2],DX RETSUBP3 ENDPCODE ENDS END START 9.指令語句AND AX,OPD1 AND OPD2中,OPD1和OPD2是兩個已賦值的變量,問兩個AND操作分別在什么時間進行?有什么區(qū)別? 解 前面的AND是指令,在程序運行時執(zhí)行,后面的AND是運算符,在匯編的時候由匯編程序計算,表達式計算結(jié)果出現(xiàn)在執(zhí)行程序中。二者的區(qū)別在于,前者是指令,程序運行時執(zhí)行,后者是運算符,匯編時計算。 10.如下指令或程序是否有錯,若有錯,請指出錯在哪里? (1)KI EOU 1024 ┇ MOV K1,AX (2) MOV DS,100 MOV [1000],[2000] (3)IMP DB ? ┇ MOV IMP,AX (4)A1 DB ? A2 DB 10 ┇ CMP A1,A2 (5)將1000送入X1單元,用如下程序: X1 DB ? ┇ MOV BX,X1 MOV [BX],1000 解 (1)MOV K1,AX錯。因為K1為立即數(shù),它不能作為目的操作數(shù)。 (2)這兩條指令都是錯的。第一條立即數(shù)不能直接送給段寄存器;第二條兩個操作數(shù)不能同時為內(nèi)存操作數(shù)。 (3)MOV IMP,AX錯。兩操作數(shù)類型不匹配,IMP是一字節(jié)內(nèi)存單元,而AX寄存器中為16位數(shù)據(jù)。 (4)CMP A1,A2錯。兩個操作數(shù)A1與A2不能同時為內(nèi)存操作數(shù)。(5)MOV [BX],1000錯。兩操作數(shù)類型不匹配,[BX]只定義了一字節(jié)單元,而1000是16位數(shù)據(jù)。 11.8086匯編語言程序中段的類型有幾種?各段如何定義?段定義語句中,定位類型、組合類型、類別各起什么作用?各有什么含義?解 8086匯編語言中,段的類型有三種,即代碼段、堆棧段、數(shù)據(jù)段(附加數(shù)據(jù)段可歸屬于數(shù)據(jù)段)。各段可用段定義語句(SEGMENT與ENDS)和段名賦給段寄存器語句(ASSUME)來定義。段定義語句中,定位類型表示此段的起始邊界要求,可允許4種段的起始邊界,即PAGE、PARA、WORD或BYTE。它們分別表示段的起始值為以頁、節(jié)、字、字節(jié)為邊界,若此項省略,則默認值為PARA。組合類型用來告訴連接程序本段與其他段的關(guān)系,分別為NONE、PUBLIC、COMMON、AT表達式、STACK或MEMORY。每一種的含義請參看主教材。類別是連接程序(LINK)需要的。它可以是任何合法的名稱,必須用單引號括起來,連接程序只使同類別的段發(fā)生關(guān)聯(lián)。典型類別如‘CODE’、39。STACK39。 12.使用DOS功能調(diào)用0AH從鍵盤輸入40個字符的字符串并將其送入一輸入緩沖區(qū)。在按下Enter鍵后,顯示這些字符。解NAME KBDINPUTCODE SEGMENT ASSUME CS:CODE,DS:CODE ORG 100HSTART:JMP BEGINBUF DB 41NUMB DB ?CHARS DB 41 DUP(?)MSG1  DB 39。Type anything,followed by enter.39。,0DH,0AH,39。$39。MSG2 DB 0DH,0AH,39。Contents of the KBD input buf:39。,0DH,0AH,39。$39。BEGIN:MOV AX,CS MOV DS,AX MOV DX,OFFSET MSG1 MOV AH,9 INT 21H MOV DX,OFFSET BUF MOV AH,0AH INT 21 H MOV DX,OFFSET MSG2 MOV AH,9 INT 21H XOR BX,BX MOV BL,NUMB MOV CHARS[BX],39。$39。 MOV DX,OFFSET CHARS MOV AH,9 INT 21H MOV AH,4CH INT 21HCODE ENDS END START 說明 本題把數(shù)據(jù)區(qū)放在代碼段中,沒有單獨定義數(shù)據(jù)段。并且用ORG 100H語句把程序起始地址的偏移量放在100H開始的單元,用JMP BEGIN指令跳過數(shù)據(jù)區(qū),這樣可以把該程序經(jīng)匯編、連接后的執(zhí)行程序(.EXE)用EXE2BIN軟件生成.COM文件?;颍篋ATA SEGMENTBUF DB 41NUMB DB ?CHARS DB 41 DUP(?)MSG1  DB 39。Type anything,followed by enter.39。,0DH,0AH,39。$39。MSG2 DB 0DH,0AH,39。Contents of the KBD input buf:39。,0DH,0AH,39。$39。DATA ENDSCODE SEGMENT ASSUME CS:CODE,DS:DATASTART:MOV AX,DATA MOV DS,AX MOV DX,OFFSET MSG1 MOV AH,9 INT 21H MOV DX,OFFSET BUF MOV AH,0AH INT 21 H MOV DX,OFFSET MSG2 MOV AH,9 INT 21H XOR BX,BX MOV BL,NUMB MOV CHARS[BX],39。$39。 MOV DX,OFFSET CHARS MOV AH,9 INT 21H MOV AH,4CH INT 21HCODE ENDS END START 13.某軟件共可接收10個鍵盤命令(分別為A,B,C,…,J),完成這10個命令的程序分別為過程P0,P1,…,P9。編一程序從鍵盤接收命令,并轉(zhuǎn)到相應(yīng)的過程去執(zhí)行。要求用兩種方法: (1)用比較、轉(zhuǎn)移指令實現(xiàn); (2)用跳轉(zhuǎn)表實現(xiàn)。 解 (1)用比較、轉(zhuǎn)移指令實現(xiàn) CODE SEGMENT ASSUME CS:CODE ORG 100H START:JMP BEGlN MSG DB 39。Error character!39。,0DH,OAH,39。$39。BEGlN:MOV AX,CS MOV DS,AXMOV AH,
點擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1