汇编程序练习(看程序写结果)
第4章 汇编语言程序设计习题解答

习题4.10 习题
• 下面程序段是实现从键盘输入十个一位 进制数后 下面程序段是实现从键盘输入十个一位10进制数后 累加,最后累加和以非压缩BCD码形式存放在 码形式存放在AH 累加,最后累加和以非压缩 码形式存放在 高位) 低位) (高位)和AL (低位)中。试把程序段中所空缺 的指令填上。 的指令填上。 XOR BX ,BX ;BX清零 清零 MOV CX,10 ; 传送数据长度 LOP:MOV AH,01H;中断 中断INT 21H的01H号调用 中断 的 号调用 INT 21H ;中断调用 中断调用P172, 键入值送入 中 键入值送入AL中 中断调用 MOV AH,BH ;将BH的内容传 的内容传AH 将 的内容传 ADD AL,BL ;BL与AL的值相加 结果在 中 的值相加,结果在 与 的值相加 结果在AL中 AAA ;非压缩 非压缩BCD码加法调整 非压缩 码加法调整 MOV BX,AX ;累加结果送 累加结果送BX 累加结果送 LOOP LOP ;CX-1→CX,判断 判断CX≠0,下列要求在数据段中依次书写各数据定义语句: 试按下列要求在数据段中依次书写各数据定义语句: 为首字节的连续存储单元中存放20H个重 (1)以DA1为首字节的连续存储单元中存放 ) 为首字节的连续存储单元中存放 个重 复的数据序列: , , 个 ,一个7。 复的数据序列:2,3,10个4,一个 。 为字符串变量, (2)DA2为字符串变量,用字变量(DW)设置一字 ) 为字符串变量 用字变量( ) 符串; 符串;‘STUDENTS’(按次顺序存放在各单元中)。 (按次顺序存放在各单元中)。 赋值以DA1为首地址 (3)用等值语句给符号 )用等值语句给符号COUNT赋值以 赋值以 为首地址 的数据区共占有的字节数, 的数据区共占有的字节数,此等值语句必须放在最 后一语句。 后一语句。 解答: 解答: ),7) (1)DA1 DB 20H DUP(2,3,10 DUP(4), ) ) ( , , ( ), (2)DA2 DW ‘TS’, ‘DU’,‘NE’,’ST’, ) , , , , (3) COUNT EQU DA2- DA1 )
汇编习题(含答案)汇编

第一章基本知识一、单项选择题1.若十进制数为132.75,则其十六进制数为( B )A.21.3B.84.CC.4.6D.62.若[X]补=11111,则其十进制真值为(C )A.-31B.-15C.-1D.313.已知X=78,Y=-83则[X+Y]补=( C )A.0F5HB.0A1HC.0FBHD.65H4.已知[X]补=98H, 则[X]补/2=( A )A.0CCHB.4CHC.49HD.31H二、填空题1.(35)10 = (23)16。
2.(15)10 = (1111)2。
3. 计算机的存储容量1KB = (1024)Byte。
4. 计算机的存储容量1MB = (1024)KB。
5. 计算机的存储容量1GB = (1024)MB。
第二章8086计算机组织一、单项选择题1.在微机系统中分析并控制指令执行的部件是( C )A.寄存器B.数据寄存器C.CPUD.EU2.在计算机的CPU中执行算术逻辑运算的部件是( A )A.ALUB.PCC.ALD.AR3.能被计算机直接识别的语言是( C )A.C语言B.汇编语言C.机器语言D.面向对象语言4.8086/8088的存储器组织是将存储器划分为段,可作为段的起始地址的是( B )。
A.185A2H B.00020HB.01004H D. 0AB568H5.堆栈中当前出栈的存储单元地址是( A )A.SS*10H+SPB.SS*10H+BPC.SS*10+SPD.SS*10+BP6.标志寄存器中属于控制标志位的是(B )A.DF,OF,SF B.DF,IF,TFC.OF,CF,PF D. AF, OF, SF7.8086/8088存储器分段,每个段不超过( D )A.64K个字 B.32K个字节C. 1M个字节D. 64K个字节二、填空题1. 假设某个字的值为1234H,其低位字节地址是20H,高位字节地址是21H,那么该字的地址是_______20H_____________。
汇编语言指令练习

汇编语言指令练习汇编语言是一种低级计算机语言,用于编写机器指令。
它主要用于底层系统开发和对硬件进行操作。
在学习和使用汇编语言时,熟悉各种指令非常重要。
本文将向你介绍一些常见的汇编语言指令,并提供一些练习来帮助你熟练掌握它们。
1. 数据传送指令数据传送指令用于将数据从一个地方传送到另一个地方。
常见的数据传送指令有:MOV(将数据从一个位置移动到另一个位置)、XCHG(交换两个位置的数据)等。
练习一:编写一个汇编程序,将寄存器AX中的数据传送到寄存器BX中。
2. 算数运算指令算数运算指令用于执行各种算术运算,如加法、减法、乘法和除法等。
常见的算数运算指令有:ADD(加法)、SUB(减法)、MUL (乘法)和DIV(除法)等。
练习二:编写一个汇编程序,将寄存器AX和寄存器BX中的数据相加,并将结果存储在寄存器CX中。
3. 逻辑运算指令逻辑运算指令用于执行逻辑运算,如与、或、非和异或等。
常见的逻辑运算指令有:AND(与运算)、OR(或运算)、NOT(非运算)和XOR(异或运算)等。
练习三:编写一个汇编程序,对寄存器AX中的数据进行逻辑非运算,并将结果存储在寄存器BX中。
4. 条件判断和跳转指令条件判断和跳转指令用于根据条件来执行不同的操作,并改变程序的执行流程。
常见的条件判断和跳转指令有:CMP(比较)、JE(相等时跳转)、JNE(不相等时跳转)等。
练习四:编写一个汇编程序,比较寄存器AX和寄存器BX中的数据,如果相等则跳转到标签“EQUAL”,否则跳转到标签“UNEQUAL”。
5. 函数调用指令函数调用指令用于调用和返回函数,实现程序的模块化设计。
常见的函数调用指令有:CALL(调用函数)和RET(返回函数)等。
练习五:编写一个汇编程序,调用一个名为“add”的函数,该函数将寄存器AX和寄存器BX中的数据相加,并将结果存储在寄存器CX中。
以上是一些常见的汇编语言指令及相应的练习。
通过反复练习这些指令,你将能够更好地理解和掌握汇编语言的编程技巧。
汇编语言编程练习

汇编语言编程练习1.数值运算编程(a)实验目的通过编程及程序调式,熟悉8086/8088运算指令及DEBUG动态调试程序的方法(b)实验内容●无符号二进制数运算已知有20个8位的无符号二进制数,编一个程序完成对这些数的求和程序:STACK SEGMENT STACK'STACK';STACK SEGMENTDW128DUP(?);128WORDSSTACK ENDS;SEGMENT ENDDATA SEGMENT PARA'DATA';DATA SEGMENTTABLE DB01,02,02,04,04,06,07,08,08,10,10,10,14,15,16,17,18,19,20TOTAL DW?;BCD加法运算结果PRINT DB?;显示的ASCII字符DATA ENDS;SEGMENT ENDCODE SEGMENT PARA'CODE'ASSUME CS:CODE,DS:DATA,SS:STACKMAIN PROC FARPUSH DSXOR AX,AXMOV AX,DATAMOV DS,AXMOV AX,0MOV BX,OFFSET TABLEMOV CX,20SUM:ADD AL,[BX]JNC OVERINC AHCLCOVER:INC BXLOOP SUMMOV TOTAL,AXMOV CX,0010LEA SI,PRINT+3L20:CMP AX,CX;值<10?JB L30;是,退出XOR DX,DX;清除高位商DIV CX;除以10OR DL,30HMOV[SI],DL;存ASCII字符DEC SIJMP L20L30:OR AL,30H;存最后的商MOV[SI],AL;作为ASCII字符MOV AH,02H;打印算术结果MOV CX,4LEA DI,PRINTL10:MOV DL,[DI]INT21HINC DILOOP L10MOV AX,4C00HINT21HMAIN ENDPCODE ENDSEND MAIN说明:8位无符号数相加,用AX做存储器,在低位AL上进行累加,在高位AH上进行和0的进位加法运行结果:●BCD算术运算已知两个6位的BCD码,完成减法运算,设被减数为123456,减数为789123程序:STACK SEGMENT STACKDW128DUP(?)STACK ENDSDATA SEGMENT PARA'DATA'NUMBER1DB'789123'NUMBER2DB'123456'SF DB'-';需打印的符号RESULT DB?;存算术结果DATA ENDSCODE SEGMENT PARA'CODE'ASSUME CS:CODE,DS:DATA,SS:STACKMAIN PROC FARPUSH DSSUB AX,AXPUSH AXMOV AX,DATAMOV DS,AXLEA SI,NUMBER1+5LEA DI,NUMBER2+5LEA BX,RESULT+5MOV CX,6CLCMOV AL,[SI];将低位放在AL中L10:MOV AH,[SI-1];将高位放在AH中SBB AL,[DI]AAS;做ASCII减法调整OR AX,3030HMOV[BX],AL;存单位运算结果MOV AL,AH;将下一位放入ALDEC SIDEC DIDEC BXLOOP L10MOV AH,02H;打印算术结果MOV CX,7LEA DI,SFL20:MOV DL,[DI]INT21HINC DILOOP L20MOV AX,4C00HINT21HMAIN ENDPCODE ENDSEND MAIN运行结果:2.非数值运算编程(a)实验目的通过非数值运算(如统计,分类,排序,代码转换等)编程,进一步掌握8086/8088汇编语言程序设计方法和技巧(b)实验内容●统计和分类ii.100H个8位无符号数,按0~1FH,20H~3FH,…,0EFH~0FFH分成10组,试统计每组内数据个数程序:STACK SEGMENT STACKDW64DUP(0)STACK ENDSDATA SEGMENTIARRAY DB100DUP(0)OARRAY DB100DUP(0)F1DW0F2DW0F3DW0F4DW0F5DW0F6DW0F7DW0F8DW0DISPLAY DB100DUP(0)TEN DW10LCONT DW0MESSAGE DB'0~1FH20H~3FH40~5FH60~7FH80~9FH0EH~0BFH0C0H~0DFH0EFH~0FFH:','$'DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA,SS:STACK MAIN PROC FARPUSH DSXOR AX,AXPUSH AXMOV AX,DATAMOV DS,AXLEA BX,IARRAYLEA DI,OARRAYXOR CX,CXJMP J2J1:MOV DL,ALMOV AH,2INT21HCALL CONVERTJ2:MOV AH,7INT21HCMP AL,0DHJE NEXT1CMP AL,','JE J1CMP AL,''JE J1CMP AL,'0'JL J2CMP AL,'9'JG J2CALL INPUTJMP J2NEXT1:CALL CONVERTLEA BX,OARRAYMOV CX,[LCONT]C0:MOV DL,[BX]CMP DL,0JB NEXT2CMP DL,1FHJB C1CMP DL,3FHJB C2CMP DL,5FHJB C3CMP DL,7FHJB C4CMP DL,9FHJB C5CMP DL,0BFHJB C6CMP DL,0DFHJB C7JA C8C1:MOV AX,[F1]INC AXMOV[F1],AXJMP NEXT2C2:MOV AX,[F2]INC AXMOV[F2],AXJMP NEXT2C3:MOV AX,[F3]INC AXMOV[F3],AXJMP NEXT2C4:MOV AX,[F4]INC AXMOV[F4],AXJMP NEXT2C5:MOV AX,[F5]INC AXMOV[F5],AXJMP NEXT2C6:MOV AX,[F6]INC AXMOV[F6],AXJMP NEXT2C7:MOV AX,[F7]INC AXMOV[F7],AXJMP NEXT2C8:MOV AX,[F8]INC AXMOV[F8],AX NEXT2:INC BXDEC CXJNZ C0MOV DL,0AHMOV AH,2INT21HLEA DX,MESSAGEMOV AH,09HINT21HMOV CX,8LEA BX,F1S0:CALL SHOWCMP CX,1JE NEXT3MOV DL,','MOV AH,2INT21HADD BX,2NEXT3:DEC CXJNZ S0RETMAIN ENDPINPUT PROC NEARMOV[BX],ALINC BXINC CXMOV AH,2MOV DL,ALINT21HOUT1:RETINPUT ENDPCONVERT PROC NEARSUB BX,CXDEC CXXOR AX,AXMOV AX,[BX]SUB AX,30HCMP CX,0JE OUT2LOOP1:MUL TENINC BXADD AX,[BX]SUB AX,30HLOOP LOOP1 OUT2:MOV[DI],ALINC DIMOV AX,[LCONT]INC AXMOV[LCONT],AXRETCONVERT ENDPSHOW PROC NEARLEA DI,DISPLAYMOV CH,0MOV AX,[BX]S1:XOR DX,DXDIV TENMOV[DI],DLINC DIINC CHCMP AX,0JNZ S1S2:DEC DIMOV DL,[DI]ADD DL,30HMOV AH,2INT21HDEC CHJNZ S2RETSHOW ENDPCODE ENDSEND MAIN程序说明由于100H个无符号数进行排序,数据个数比较多,因此运行时输入10个。
汇编程序练习题目

1.已知(AX)=1234H,执行下述三条指令后,(AX)=( D )MOV BX,AXNEG BXADD AX,BXA.1234H B.0EDCCH C.6DCCH D.0000H 2.写出完成下述功能的程序段:(1)传送25H到AL寄存器(2)将AL的内容乘以2(3)传送15H到BL寄存器(4)AL的内容乘以BL的内容并请写出最后(AX)=?答:(1)MOV AL, 25H(2)SHL AL, 1(3)MOV BL, 15H(4)MUL BL最后,(AX)=612H =1554一个有128个字的数据区,它的起始地址为12ABH:00ABH,请给出这个数据区最末一个字单元的物理地址是( c )A.12CSBH B.12B6BH C.12C59H D.12BFEH1、在实模式下,段地址和偏移地址为3017:000A的存储单元的物理地址是3017AH?如果段地址和偏移地址是3010:002A和3010:007A的存储单元的物理地址分别是3017AH 和3017AH选择题:循环指令loop again与(A)等价A dec cx;jnz againB inc cx;jnz againC mul cx;jnz againD add cx;jnz again2程序写出结果:mess db 'chengxujieguo''13''10''$'mov bx,offset messmov ax,10mov dl,3sub ax,1mul dladd bx,axmov cx,13a:mov dl,[bx]mov ah,02int 21hinc bxloop amov ah,2dhint 21hmov ah,2ahint 21h答案:chengxujieguo1.指令MOV AX,[BX+4000H]的寻址方式为(B)A 寄存器间接寻址 B、寄存器相对寻址 C、立即寻址 D、直接寻址2.试编写一程序段,要求在长度为100H字节的数组中,找出大于42H的无符号数的个数并存入字节单元UP中,找出小于42H的无符号数的个数并存入字节单元DOWN中。
汇编语言程序设计(第二版)课后习题答案

汇编语言程序设计(第二版)课后习题答案第二章1.解答:有256个2.解答:如下图.第一个络子为000B0H字单元,注意,是字单元,第五个格子为000B3H字单元E51E3C2A3.解答:30022H字节单元内容:ABH30024H字节单元内容:EFH30021H字单元内容:AB34H30022H字单元内容:CDABH4.解答:这三个物理地址都是3017AH,说明了不同的段地址和偏移地址对应同一物理地址5.解答:CS+IP第一个字的物理地址为:0AAA40H6.解答:条件标志OF,SF,ZF,CF,的值依次为:0,0,0,07.下列操作可使用那些寄存器?(1)加法和减法AX,BX,CX,DX,当然,还有这几个通用寄存器的高低位了,如AH,AL等(2)循环计数CX(3)乘法和除法DX,AX,AH,AL(4)保存段地址CS,DS,ES,SS(5)表示运算结果为O FLAGS(6)将要执行的指令地址IP(7)将要从堆栈取出数据的地址BP,SP,SS8.可以用来指示存储器地址的寄存器有:BX,SP,BP,DI,CS,DS,SI,ES,SS,IP9.一一对应;5--A4--B2--C3--D12--E9--F11--G10--H13--I8--J7--K6---L1--M15--N14--O第三章1.(1)立即寻址没有(2)直接寻址7237H(3)使用BX的寄存器寻址没有(4)使用BX的间接寻址637DH(5)使用BX的寄存器相对寻址0D5B4H(6)基址变址寻址8E18H(7)相对基址变址004FH2.根据下列要求,写出相应的汇编指令。
(1)ADD DX,BX(2)ADD AL,[BX][SI](3)ADD[BX][0B2H],CX(4)MOV AX,2A59H ADD[0524H],AX(5)ADD AL,0B5H3.(1)寄存器间接寻址MOV BX,OFFSET[BLOCK][0AH]MOV DX,[BX](2)寄存器相对寻址MOV SI,OAHMOV DX,[BLOCK][SI](3)基址变址寻址MOV BX,BLOCKMOV SI,OAHMOV DX,[BX][SI]4.现有(DS)=2000H,(BX)=0100H,(SI)=0002H,(20100)=12H,(20101)=34H,(20102)=56H,(20103)=78H,(2 1200)=2AH,(20201)=4CH,(21202)=B7H,(21203)=65H,试说明下列各条指令执行完后,AX寄存器的内容。
汇编程序模拟题(有答案)_图文

二.填空题(共5分)(从给出的词语中选择)
1.宏定义开始的伪指令是___D__。
2.DF是程序状态字寄存器的___E___标志位。
3.对汇编语言源程序进行汇编时,使用的宏汇编程序文 件名是___B__。
4.汇编语言程序中各语句的操作项可以是指令、伪指令 或__A__的助记符。
5.CF是程序状态字寄存器中的___C___标志位。
10.用MOV指令将十进制数89以非压缩BCD码格式存入AX,
可使用的指令是(D)
A. MOV AX,89
B. MOV AX,0809
C. MOV AX,89H
D. MOV AX,0809H
11.VAR1 EQU BYTE PTR VAR2 VAR2 DW 0ABCDH ┋ SHL VAR1,1 SHR VAR2,1
XOR AL,DH/ NEG AH/ NOT AL。执行上述指令序列后 ,AH=60h,AL=35h。
10
4、DATA SEGMENT S9 DB 0,1,2,3,4,5,6,7,8,9 DATA ENDS ┇ LEA SI,S9 LEA,DI,S9+1 MOV CX,5 LOP:MOV AL,[SI] XCHG AL,[DI] MOV [SI],AL ADD SI,2 ADD DI,2 LOOP LOP
上述程序段运行后,S9开始的10个字节存储单元内容是 什么?(1,0,3,2,5,4,7,6,9,8)
11
5、
MOV AL,38H
MOV BL,49H
CALL SUBO
INC AL
DEC CL
┇
SUBO PROC
ADD AL,BL
MOV CL,AL
DAA
RET
计算机组成原理与汇编语言程序设计课后习题及解答(详解)

计算机组成原理与汇编语言程序设计课后习题及解答徐洁,俸远祯电子工业出版社第1章习题一1.什么是程序存储工作方式?答:计算机的工作方式——存储程序工作方式。
即事先编写程序,再由计算机把这些信息存储起来,然后连续地、快速地执行程序,从而完成各种运算过程。
2.采用数字化方法表示信息有哪些优点?用数字化方法表示信息的优点:(1)抗干扰能力强, 可靠性高。
(2)依靠多位数字的组合,在表示数值时可获得很宽的表示范围以及很高的精度。
(3)数字化的信息可以存储、信息传送也比较容易实现。
(4)可表示的信息类型与范围及其广泛,几乎没有限制。
(5)能用逻辑代数等数字逻辑技术进行信息处理,这就形成了计算机硬件设计的基础。
3.如果有7×9点阵显示出字符A的图像,请用9个七位二进制代码表示A的点阵信息。
4.数字计算机的主要特点是什么?1. (1)能在程序控制下自动连续地工作;(2|)运算速度快;(3)运算精度高;(4)具有很强的信息存储能力;(5)通用性强,应用领域及其广泛。
5.衡量计算机性能的基本指标有哪些?答:衡量计算机性能的基本指标:(1)基本字长——参加一次运算的数的位数;(2)数据通路宽度——数据总线一次能并行传送的位数;(3)运算速度——可用①CPU的时钟频率与主频,②每秒平均执行指令数,③典型四则运算的时间来表示。
(4)主存储器容量——可用字节数或单元数(字数)×位数来表示。
(6)配备的外围设备及其性能。
(7)系统软件配置。
7.系统软件一般包括哪些部分?列举你所熟悉的三种系统软件。
系统软件一般包括操作系统,编译程序、解释程序、各种软件平台等。
例如WINDOWS98操作系统,C 语言编译程序等,数据库管理系统。
8.对源程序的处理有哪两种基本方式?对源程序的处理通常有两种处理方式:解释方式和编译方式。
第2章习题二1.将二进制数(101010.01)2 转换为十进制数及BCD码。
解:(101010.01)2 = (42.25)10 = (01000010.00100101)BCD2.将八进制数(37.2)8转换为十进制数及BCD码.解:(37.2)8 = (31.25)10 =(00110001.00100101)BCD3.将十六进制数(AC.E)转换为十进制数及BCD码.解: (AC.E)16 =(172.875)10 = (000101110010.100001110101)BCD4.将十进制数(75.34)10转换为8位二进制数及八进制数、十六进制数。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
看程序读结果
1.单片机片内RAM的字节单元20H中为01H,字节单元02H中为07H。
M EQU 00H
N EQU 01H
Y EQU 02H
MOV C,M
ANL C,/N
MOV 07H,C
MOV C,N
ANL C,/M
ORL C,07H
MOV Y, C
SJMP $
执行程序段后字节单元(20H)= H,字节单元(02H)= H。
2.
已知:片内RAM的20H中为01H,执行下列程序段后(30H)= H。
MOV A,20H
INC A
MOV DPTR, #2000H
MOVC A,@A+DPTR
CPL A
MOV 30H , A
LL : SJMP LL
3 . 执行下列程序段后CY= , OV= 。
MOV A, #56H
ADD A, #74H
ADD A, ACC
4.设SP=60H,单片机片内RAM的(30H)=24H,(31H)=10H。
PUSH 30H ;
PUSH 31H ;
POP DPL ;
POP DPH ;
MOV A, #00H
MOVX @DPTR, A
该程序段最后的执行结果是将00H送入单元中。
5.设R0=20H,R1=25H, 单片机片内RAM的(20H)=80H,(21H)=90H,(22H)=A0H, (25H)=A0 H,(26H)=6FH,(27H)=76H,下列程序段执行后,
(21H)= H, (22H)= H, R0= H。
ORG 0000H
CLR C
MOV R2,#02H
LOOP: MOV A,@R0
ADDC A,@R1
MOV @R0,A
INC R0
INC R1
DJNZ R2, LOOP
JNC NEXT
MOV @R0,#01H
SJMP $
NEXT: DEC R0
SJMP $
6.下列程序段执行后, A= H。
ORG 0000H
MOV R1,#48H
MOV 48H,#51H
CJNE @R1,#51H, NEXT1
JNC NEXT1
MOV A, #0FFH
SJMP NEXT2
NEXT1: MOV A,#0AAH
NEXT2: SJMP NEXT2
7. START:MOV R1,#00H
AGAIN:CLR C
JZ NEXT
RRC A
JNC AGAIN
INC R1
AJMP AGAIN
NEXT:RET
若执行该子程序前,CY=1, A=0FEH,
则执行该子程序后R1= H, A= H。
8.设单片机片内RAM的(59H)=50H,执行下列程序段。
ORG 0000H
MOV A,59H
MOV R0,A
MOV A,#0
MOV @R0,A
MOV A,#25H
MOV 51H,A
MOV 52H,#70H
SJMP $
问A= H, (50H)= H。
9.执行下列程序段后,单片机80C51片内RAM 中(30H)= H 。
ORG 0000H
MOV A, #04H
MOV DPTR, #0050H
MOVC A, @A+DPTR
MOV 30H, A
SJMP $
ORG 0050H
BAO: DB 77H,08H,1BH,26H,49H,3CH,52H ,0BAH,
END
10.分析下列程序片段的运行结果。
已知(40H)= 0AH,(41H)= 0CEH,运行下列程序段后
MOV R0,#40H
INC R0
INC @R0
MOV 20H,@R0
LL:SJMP LL
请填写下面结果:
R0= H,(40H)= H,(41H)= H,
11.已知单片机8031片内RAM 中 (40H)=95H
试分析下段程序的运行结果。
并简述程序段功能。
ORG 2000H
MOV A,40H
MOV B,#64H
DIV AB
ORL A,#30H
MOV 36H,A
MOV A,B
MOV B,#0AH
DIV AB
ORL A,#30H
MOV 35H,A
MOV A,B
ORL A,#30H
MOV 34H,A
LL:LJMP LL
请填写下面结果:
(36H)= H,(35H)= H,
(34H)= H,(40H)= H。
12.已知 (PSW)=(CY/ AC /F0/ RS1/ RS0 /0V/×/ P/)=91H
(00H)=05H,(11H)=06H,(10H)=AAH
执行下列程序段后,
ORG 2000H
MOV A,#0B3H
ADDC A,R0
MOV R1,A
SJMP $
请填写下面结果:
下列寄存器中的内容为 (A)= H, (PSW)= H.
13.已知单片机8031片内RAM 中
(41H)=12H,(40H)=95H
(31H)=34H,(30H)=78H
试分析下段程序的运行结果。
并简述程序段功能。
ORG 2000H
MOV A,30H
ADD A,40H
DAA
MOV 50H,A
MOV A,31H
ADDC A,41H
DAA
MOV 51H,A
LL:SJMP LL
请填写下面结果:
(51H)= H,(50H)= H,
(41H)= H,(40H)= H。
14.设SP=55H,单片机内有关单元内容已知如下:(52H)=34H,(53H)=26H,(54H)=03H,(55H)=20H,(56H)=33H,(57H)=44H,问执行RET指令后SP= H,PC= H。