关键词不能为空

当前您在: 主页 > 英语 >

微机原理期末考试复习

作者:高考题库网
来源:https://www.bjmy2z.cn/gaokao
2021-02-01 23:49
tags:

-

2021年2月1日发(作者:wise)


1


、统计出某数组中相邻两数之间符号变化的次数



DATA



SEGMENT



ARRAY



DB



20



DUP (?)



NUM



DB



0


DATA



ENDS


CODE



SEGMENT



ASSUME



CS:CODE,DS:DATA


STARTUP:LEA



SI , ARRAY;



MOV



AL ,[SI]



MOV



BL,0



MOV



CX,19



AGAIN:



INC



SI



XOR



AL ,[SI]



J NS



NEXT



INC



BL



NEXT:



MOV



AL ,[SI]



LOOP



AGAIN




MOV



NUM,BL



MOV



AH ,4CH



INT



21H


CODE



ENDS



END



STARTUP


2


、乘法指令实现< /p>


32


位二进制数与


16

< br>位二进制数相乘



MODEL



SMALL



.8086



.DATA



N1



DW



1234H



N2



DW



5678H



N3



DW



4444H



M1



DW



0



M2



DW



0



M3



DW



0


CODE




. STARTUP



MOV



AX ,N2



MUL



N3



MOV



M3,AX



MOV



M2,DX



MOV



AX,N3



MUL



N1



ADD



M2,AX



ADC



M1,DX



.EXIT


END


3


、设有


3


个自变量的变量 名及其内容如下:



V


AR1



3C46H , V


AR2



F678H , V


AR3



0059H


设计一个数据段定义这三个变量及其地址表变量


DDRTABL


DATA



SEGMENT




V


AR1



DW



3C46H



V


AR2



DW



F678H



V


AR3



DW



0059H



ADDRTABL







DD



V


AR1





DD



V


AR2





DD



V


AR3



DATA



ENDS




4


、设有 一个符号数组,共


M


个,求其中最大的数,如需要求绝对值


最大应如何修改,如为无符号数,程序如何修改。



DATA



SEGMENT



M



EQU



10



DAT



DW



M DUP(?)



MAX



DW



?



DATA



ENDS



CODE



SEGMENT


ASSUME



CS:CODE ,DS:DATA


STARUP :



MOV



AX ,DAT




MOV



MAX ,AX




CLD




LEA



SI ,DAT




MOV



CX ,M




L1:



LODSW




CMP



AX ,MAX




JNG



LAB





MOV



MAX ,AX




LAB :




LOOP



L1



MOV



AH ,4CH



INT 21H


CODE ENDS


END



STARTUP


绝对值修改:需要在


LODSW


插入< /p>



AND



AX ,AX


JNS



LAB1


NEG



AX


LAB1: CMP



AX ,MAX


程序初始化时


MAX


应送入


0


无符号数程序修改:



判别条件


CMP



AX ,MAX



JNG



LAB


修改为


CMP



AX,MAX




JBE



LAB

< br>5



编制一个程序将


20


个字节的数组分为正数和负数组,


并计算两个


数组中数据的个数



DATA



SEGMENT


DAT



DB



20



DUP (?)


PDAT DB



20



DUP(?)


PDAT DB



?


PLEN



DB



?


NDAT



DB 20



DUP (?)


NLEN



DB



?


DATA



ENDS


CODE



SEGMENT


ASSUME



CS:CODE ,DS:DATA




STARTUP:


XOR



BX ,BX


LEA



SI ,DAT


XOR



DI,DI


CLD


MOV



CX,20


LOOP0 : LODSB


CMP



AL,0


JGE



LOOP1


MOV



NDAT[BX] ,AL


INC



BX


JMP



LAB


LOOP1:




MOV



PDAT[DI] ,AL


INC



DI


LAB:



DEC CX


JNZ



LOOP0


MOV



PLEN ,DI


MOV



NLEN,BX


MOV



AH,4CH


INT



21H


CODE



ENDS


END



STARTUP


6



把从


A

< p>
开始的


8


个字节单元内容依次和从


B


开始的


8


个相应的字


节单元内容互换。



DATA



SEGMENT





A



DB



'ABCDEFGH'




B



DB



'12345678'


DATA



ENDS


CODE



SEGMENT




ASSUME



CS:CODE ,DS:DATA


START:



MOV



AX ,DATA











MOV



DS,AX











LEA



SI



,A











LEA



DI ,B










MOV



CX,8





LP:MOV



AL ,[SI]







XCHG



AL ,[DI]







MOV



[SI], AL







INC



SI







INC



DI







LOOP



LP







MOV



AH



,4CH







INT



21H


CODE



ENDS




END



START


7



计算


BUF

< p>
开始的数组中的


100


个元素中非零元素的个数,


并将其


存入


COUNT


单元


,


补全指令



BUF



DB



100



DUP (?)


COUNT



DB



0




..............


STARTUP: MOV



AX,DATA


MOV



DS,AX


LEA



SI, (1)________


MOV



CX ,(2)______


CON:MOV



AL,[SI]




CMP



AL ,(3)_______


.JZ



NEXT


INC



(4)_____


NEXT:



INC



SI


LOOP



(5)______


HLT


答案:


BUF



100



0



COUNT



CON


8


、程序执行后寄存器的值:



MOV



AX,01H


MOV



BX ,02H


PUSH



BX


PUSH



AX


POP




BX



执行后


BX=



1



___


POP




AX



执行后


AX=(1)____


MOV



AX



,3F5FH



执行后


AL=(3)______


MOV



CX ,4


ROR



AL,CL



执行后


AL=(4)____


AND



AL ,0FH




执行后


AL=(5)_______


答案:


01H




02H




5FH



0F5H




05H


9


、分支程序设计实验




1


)显示


AL

< p>
中两位十六进制数程序:



CODE SEGMENT



ASSUME CS:CODE


START:


MOV AL,3EH


MOV BL,AL





MOV DL,AL



MOV CL,4



SHR DL,CL



CMP DL,9



JBE NEXT1



ADD DL,7


NEXT1:


ADD DL,30H



MOV AH,2



INT 21H







MOV DL,BL






AND DL,0FH



CMP DL,9



JBE NEXT2



ADD DL,7


NEXT2:


ADD DL,30H



MOV AH,2



INT 21H



MOV AH,4CH



INT 21H


CODE ENDS



END START



2


)显示键入字符





CODE SEGMENT



ASSUME CS:CODE


START:


MOV AH,1







INT 21H



CMP AL,0DH



JZ DONE

-


-


-


-


-


-


-


-



本文更新与2021-02-01 23:49,由作者提供,不代表本网站立场,转载请注明出处:https://www.bjmy2z.cn/gaokao/595921.html

微机原理期末考试复习的相关文章