ROM 拳皇2000romH单元内容送R2

几道简单的汇编语言题求***!我追加高的分数1.外部RAM1000H单元内容送寄存器R2中2.内部RAM20H单元内容送外部RAM 1000H单元3外部RAM20H单元内容送外部RAM1000H单元4.ROM 2000H单元内容送内部RAM 30H单元5.ROM 2000H单元内容送外部RAM20H单元6ROM 2000H单元内容送外部RAM1000H单元7.将外部RAM 1000H单元中的低4位清0,其余位不变,结果存回原处8.将内部RAM 50H单元中高3位置1,其余位不变,结果存回原处9.将内部RAM 20H单元的高4位置1,低4位清0,结果存回原处10.将DPTR的中间8位取反,其余位不变,结果存回原处
1.外部RAM1000H单元内容送寄存器R2中MOV DPTR,#1000HMOVX A,@DPTRMOV R2,A2.内部RAM20H单元内容送外部RAM 1000H单元MOV A,20HMOV DPTR,#1000HMOVX @DPTR,A3外部RAM20H单元内容送外部RAM1000H单元MOV DPTR,#20HMOVX A,@DPTRMOV DPTR,#1000HMOVX @DPTR,A4.ROM 2000H单元内容送内部RAM 30H单元MOV DPTR,#2000HMOVC A,@DPTRMOV 30H,A5.ROM 2000H单元内容送外部RAM20H单元MOV DPTR,#2000HMOVC A,@DPTRMOV DPTR,#30HMOVX @DPTR,A6ROM 2000H单元内容送外部RAM1000H单元MOV DPTR,#2000HMOVC A,@DPTRMOV DPTR,#1000HMOVX @DPTR,A7.将外部RAM 1000H单元中的低4位清0,其余位不变,结果存回原处MOV DPTR,#1000HMOVX A,@DPTRANL A,#0F0HMOVX @DPTR,A8.将内部RAM 50H单元中高3位置1,其余位不变,结果存回原处ORL 50H,#0E0H9.将内部RAM 20H单元的高4位置1,低4位清0,结果存回原处ORL 20H,#0F0HANL 20H,#0F0H10.将DPTR的中间8位取反,其余位不变,结果存回原处A(此题我理解为:将DPTR中的16位数的中间8位取反,其余位不变,结果存回原处,即dptr中)MOV A,DPHXRL A,#0FHMOV DPH,AMOV A,DPLXRL A,#0F0HMOV DPL,A
为您推荐:
其他类似问题
扫描下载二维码单片机习题***8.写出能完成下列数据传送的指令或指令序列:(1)\x05R1中内容传送到R2(2)\x05内部RAM 20H单元内容送30单元(3)\x05外部RAM 20H单元内容送内部RAM 20单元(4)\x05外部RAM 2000H单元内容送内部RAM 20单元(5)\x05外部ROM 2000H单元内容送内部RAM 20单元(6)\x05外部ROM 2000H单元内容送内部RAM 3000单元(7)外步RAM的4000H单元中内容和5000H单元中内容相交换的程序.9. 试写出能完成如下操作的指令或指令序列:(1)\x05使20H单元中数的高两位变“0”,其余位不变.(2)\x05使20H单元中数的高两位变“1”,其余位不变.(3)\x05使20H单元中数的高两位变反,其余位不变.(4)\x05使20H单元中数的所有位变1编程将片内35H~55H单元中内容送到以3000H为首的存储区中.2设5AH单元中有一变量X,请编写计算下述函数式的程序,结果存入5BH单元.x+5 x>0Y= x x=0x-5 x
作业要自己做
是期末考试题。求***
8.(1)mov a,r1
(2)mov 20h,30
(3)mov r0,#20h
movx a,@r0
(4)mov dptr,#2000h
movx a,@dptr
(5)mov dptr,#2000h
movc a,@a+dptr
(6)应当是送外部RAM 3000单元内部RAM无 3000单元
mov dptr,#2000h
movc a,@a+dptr
mov dptr,#3000
movx @dptr,a
(7)mov dptr,#4000h
movx a,@dptr
mov dptr,#5000h
movx a,@dptr
movx @dptr,a
mov dptr,#4000h
movx @dptr,a
9.(1)anl 20h,,#3fh
(2)orl 20h,#c0h
(3)mov a,20h
anl 20h,,#3fh
anl a,#c0h
(4)mov a,20h
1.mov r0,#35h
mov r7,#21h
mov dptr,#3000h
ppp:mov a,@r0
movx @dptr,a
djnz r7,ppp
应当给你留点自己练练
为您推荐:
其他类似问题
扫描下载二维码导读:单片机一旦响应中断请求,就由硬件完成以下功能:,则按单片机内部的自然优先级顺序(外部中断0→定时器0中断→外部中断l→定时器1中,23、答:80C51单片机有4个I/O端口,第三章MCS-51单片机的指令系统与程序设计3-1选择题,10、后进先出3-4问答题与编程题1、答:MCS-51单片机指令系统按功能可分为,MCS-51单片机的指令系统提供了七种寻址方式,但是在应用中可以通过指令的类型区分
单片机一旦响应中断请求, 就由硬件完成以下功能:
(1) 根据响应的中断源的中断优先级, 使相应的优先级状态触发器置1;
(2) 执行硬件中断服务子程序调用, 并把当前程序计数器PC的内容压入堆栈,保护断点,寻找中断源; ? (3) 清除相应的中断请求标志位(串行口中断请求标志RI和TI除外); ?
(4) 把被响应的中断源所对应的中断服务程序的入口地址(中断矢量)送入PC, 从而转入相应的中断服务程序。 (5)中断返回,程序返回断点处继续执行。 21、答:
(1)由中断源提出中断请求,由中断控制允许控制决定是否响应中断,如果允许响应中断,则CPU按设定好的优先级的顺序响应中断。如果是同一优先级的中断,则按单片机内部的自然优先级顺序(外部中断0→定时器0中断→外部中断l→定时器1中断→串行接口中断)响应中断。
CPU响应中断请求后,就立即转入执行中断服务程序。保护断点、寻找中断源、中断处理、中断返回,程序返回断点处继续执行。 (2)由中断允许寄存器IE控制开放和禁止中断。欲开放某一中断,则应先开放总中断允许(EA置1),然后开放相应中断的中断允许(相应位置1);若要要禁止中断,则EA置O即可。
(3)由中断优先级控制寄存器IP控制中断优先级,相应位置1,则设为高级中断,置0则为低级。其中:PS为串行中断优先级,PTl(0)为定时中断1(0)优先级,PXl(0)外部中断1(0)优先级。 22、答:
(1)有中断源发出中断请求。
(2)中断总允许控制位EA=l, CPU开放总中断。
(3)申请中断的中断源的中断允许位为1,即该中断没有被屏蔽。 (4)无同级或更高级中断正在服务。 (5)当前指令周期已经结束。
(6)若现行指令为RETI或访问IE或IP指令时,读指令以及紧接着的另一条指令已执行完毕。
满足以上条件,则CPU响应响应中断元的中断请求。
23、答:80C51单片机有4个I/O端口,每个端口都是8位双向口,共占32根引脚。每个端口都包括一个锁存器(即专用寄存器P0~P3)、一个输入驱动器和输入缓冲器。通常把4个端口称为P0~P3。在无片外扩展的存储器的系统中,这4个端口的每一位都可以作为双向通用I/O端口使用。在具有片外扩展存储器的系统中,P2口作为高8位地址线,P0口分时作为低8位地址线和双向数据总线
24、答:中断是指CPU暂时中止其正在执行的程序,转去执行请求中断的那个外围设备或事件的服务程序,等处理完后再返回执行原来中止的程序。
MCS-51有5个中断源,其中断源与中断入口地址分别为:
中断入口地址与中断服务子程序的入口地址是有区别的,中断入口地址如上,而中断服务子程序的入口地址就是中断服务子程序名称所在的地址即中断服务子程序第一句所在的地址。 第三章 MCS-51单片机的指令系统与程序设计 3-1选择题
1B ;2B;3D;4D ;5B;6C; 7 A;8 C;9D;10B;11B;12B;13D;14D;15A ;16 3-2 判断题
1×;2×;3×;4√;5√;6×;7×;8×;9×;10√;11×;12×;13×;14×;15×16×;17 ×;18×;19√ 3-3 填空题
寄存器间接寻址 、
寄存器寻址
立即数寻址
直接寻址 、
寄存器寻址、
寄存器间接寻址、
相对寻址、
清零 。 8、 9、
10、 后进先出
3-4 问答题与编程题 1、答: MCS-51单片机指令系统按功能可分为5类:
(1)数据传送指令
(2)算术运算指令
(3)逻辑运算和移位指令
(4)控制转移指令
(5)位操作指令
2、答:寻址方式:寻址方式就是寻找指令中操作数或操作数所在地址的方式。也就是如何找到存放操作数的地址,把操作数提取出来的方法。
MCS-51单片机的指令系统提供了七种寻址方式,其对应的寻址范围如下表:
存的数据。
堆栈操作无论是存入或取出数据,均只能依次存人或依次取出,不能越位,必须遵循“先进后出&、“后进先出”的原则。 堆栈指针SP指出栈顶存储单元的地址。
4、答:汇编:汇编语言源程序在交付计算机执行之前,需要先翻译成目标程序,这个翻译过程叫汇编。
汇编语言:是用助记符替代机器语言中的操作码,用16进制数替代二进制代码。特点是比较直观,易于记忆和检查,可读性较好。但是计算机执行时,必须将汇编语言翻译成机器语言,不同的微处理器有不同的汇编语言。
5、答:指令周期:指执行一条指令所占用的全部时间。通常一个指令周期含1~4个机器周期。 6、答:指令:人为输入计算机,由计算机识别并执行一步步操作的命令的形式称为指令。
程序:一系列指令的有序集合称为程序。
程序在计算机中是按序执行的,CPU通过程序计数器PC控制程序的执行顺序,一般情况下程序是按序执行的,当执行转移、调用、返回等指令时,程序转移到相应的目的地址处执行。CPU根据程序计数器PC中的地址将欲执行指令的指令码从存储器中取出,存放在IR中,ID对IR中的指令码进行译码,定时控制逻辑在OSC配合下对ID译码后的信号进行分时,产生执行本条指令所需的全部信号,完成本条指令的执行。
7、答:两数运算的结果若没有超出字长的表示范围,则由此产生的进位是自然进位;若两数的运算结果超出了字长的表示范围(即结果不合理),则称为溢出。例如将正数3FH和负数D0H相加,其结果不会超出8位字长的表示范围,所以其结果10FH中的进位是正常进位(也就是模)。但是,若正数3FH与正数70H相加,其结果为AFH,最高位为&1&,成了负数的含义,这就不合理了,这种情况称为溢出。 8、答:这条指令是在进行BCD码加法运算时,跟在“ADD”和“ADDC”指令之后,用来对BCD码的加法运算结果自动进行修正的,使其仍为BCD码表达形式。
在计算机中,遇到十进制调整指令时,中间结果的修正是由ALU硬件中的十进制修正电路自动进行的。用户不必考虑何时该加“6”,使用时只需在上述加法指令后面紧跟一条“DA
A”指令即可。
9、答: 虽然内部RAM位寻址区的位地址范围00H~7FH与低128个单元的单元地址范围00H~7FH形式完全相同,但是在应用中可以通过指令的类型区分单元地址和位地址。
位寻址的操作只适用于下列位指令,而直接寻址操作对这些指令是无效的。
MOV C,bit MOV bit,C CLR bit
ANL C,bit
ANLC,/bit
JB bit,rel
JNB bit,rel
10、答: 在实际应用中,可从寻址范围和指令长度两个方面来选择长跳转指令LJMP和短跳转指令AJMP、长调用指令LCALL和短调用指令ACALL。
长跳转LJMP在64KB范围内转移,而短跳转AJMP只能在2KB空间转移。长调用LCALL调用位于64KB程序空间的子程序,而短调用ACALL调用位于2KB程序空间范围的子程序。AJMP、ACALL指令代码长度为2个字节;LJMP、LCALL指令代码长度为3个字节。 11、答: 指令的转移范围不同。
SJMP是256B范围内的相对转移指令,AJMP是2KB范围内的无条件短跳转指令,LJMP是64KB范围内的无条件长跳转指令。 12、答: 指令的转移范围不同。
SJMP是256B范围内的相对转移指令,AJMP是2KB范围内的无条件短跳转指令,LJMP是64KB范围内的无条件长跳转指令。 13、答: 使用@A+DPTR基址变址寻址时,DPTR为常数且是表格的首地址,A为从表格首址到被访问字节地址的偏移量。 使用@A+PC基址变址寻址时,PC仍是下条指令首地址,而A则是从下条指令首地址到常数表格中的被访问字节的偏移量。 14、答:结果为:(A)=30H
(R0)=50H
(50H)=00H
(51H)=30H 15、答:结果为: (61H)=24H
(31H)=0FFH
DPTR=2410H
源操作数的寻址方式
执行指令后的结果
寄存器寻址
(R0)=50H MOV P1,#80H
(P1)=80H MOV @R0,20H
寄存器间接寻址
MOV DPTR,#2000H
(DPTR)=2000H MOV 40H,30H
(40H)=40H MOV R0,30H
(R0)=40H MOV D0H,R0
(D0H)=40H MOV 10H,#10H
(10H)=10H MOV A,@R0
寄存器间接寻址
(A)=50H MOV P2,P1
寄存器寻址
17、答:(1)R1的内容传送到R0 ;
A (2)片外RAM 20H单元内容送R0 ;
(3)片外 RAM 20H单元的内容送片内RAM 20H单元;
(4)片外RAM 1000H单元的内容送片内 RAM 20H 单元;
A (5)ROM 2000H单元的内容送R0单元;
A, @A+DPTR
A (6)ROM 2000H 单元的内容送片内RAM 20H单元;
A, @A+DPTR MOV
A (7)ROM 2000H单元的内容送片外RAM 20H单元。
A, @A+DPTR
START: MOV
ORG 0030H MAIN: MOV R7,#20H
MOV R1,#40H
MOV DPTR,#3000H
LOOP:MOV A,@R1
MOVX @DPTR,A
DJNZ R7,LOOP
END 20、解: 参考程序:
LEN:DATA 20H
SUM:DATA 21H
BLOCK: DATA 22H
MOV R2,LEN
;块长度送R2
MOV R1,#BLOCK
;块始址送R1
;R2←块长+1
SJMP CHECK
LOOP: ADD A,@R1
;A←A+(R1)
;修改数据块指针R1
CHECK: DJNZ R2,LOOP
;存累加和
ORG 0030H MAIN: MOV R0,#30H
MOV R1,#00H
MOV R2,#00H
MOV R3,#07H
LP2: MOV A,@R0
LP1: INC R0
DJNZ R3,LP2
MOV R3,#03H LP3: CLR C
DJNZ R3,LP3
MOV 3AH,R2
21、解:参考程序
MOV R0,#DATA
;DATA为数据区起始地址
MOV DPTR,#BUFFER
;BUFFER为数据区起始地址
MOV R1,#20H
;最大数据串长
LOOP: MOV A,@R0
SUBB A,#24H
;判是否为 $ 符
MOVX @DPTR,A
;数据传送
DJNZ R1,LOOP
;循环控制 LOOP1: RET
22、解: 参考程序:先判两数是否同号,在同号中判大小,异号中正数为大。 25、解:
ANL A,#80H
;用于判断符号位
;A为0,说明符号相同,需要比较转移。
JB 20H.7,BG
;A不为0,两数异号,判20H单元是否为正数
MOV 22H,20H
SJMP $ BG:
MOV 22H,21H
CMP: MOV A,20H
;两数同号,比较大小
CJNE A,21H,GR ;影响进位或借位 GR:
MOV 22H,21H
MOV 22H,20H
MAIN:MOV R2,#100
MOV R3,#00H MOV R4,#00H MOV R5,#00H MOV DPTR,#2000H
MOVX A,@DPTR
CJNE A,#00H,NET1 INC R3 INC DPTR DJNZ R2,LOOP SJMP NET3
INC R4 INC DPTR DJNZ R2,LOOP SJMP NET3 NET2: INC R5
DJNZ R2,LOOP
NET3: SJMP $
参考程序:注意压缩的BCD码为一个字节占两位BCD码。
MOV R7,#05H
;R7为转换字节数
MOV R0,#20H
;R0为源操作数地址
MOV R1,#25H
;R1为目的操作数地址 NE:
ANL A,#0FH
;先取低位BCD码
ADD A,#30H
;将BCD码转换成ASCⅡ码
ANL A,#0F0H
;取高位BCD码
;半字节交换
ADD A,#30H
;将高位BCD码转换成ASCⅡ码
DJNZ R7,NE
ORG 0030H MAIN:
LCALL SUBONE
AJMP $ ;SUBONE use dptr,a,30h,31h SUBONE:
MOV DPTR,#2000H LOOP:
MOVX A,@DPTR
XRL A,#41H
MOV DPTR,#20A0H
MOVX @DPTR,A
MOV DPTR,#20A1H
MOVX @DPTR,A
MOV 30H,DPH
MOV 31H,DPL
CJNE A,@00H,LOOP
解 ADDIO:
MAIN: MOV
;待转换的数送A
DPTR,#TAR
;表首地址送DPTR
A,@A+DPTR
;查ASCII码表
;查表结果送R3
30H,31H,32H,33H,34H
35H,36H,37H,38H,39H
R0,#40H数据块首地址送R0
R7,#09H比较次数送R7
A,@R0取数送A
30H,@R0取数送30H
A,30H,NEHT(A)与(30H)相比
(A)≥(30H)转BIR1
包含总结汇报、党团工作、旅游景点、外语学习、出国留学、办公文档、教程攻略、专业文献以及单片机原理及应用习题及***等内容。本文共9页
相关内容搜索

参考资料

 

随机推荐