单片机编程将片内RAM单元30H~37H的数据块传送到片外RAM的40H~47H单元中?

如题所述

ORG 0000H
LJMP MAIN

ORG 0100H
MAIN: MOV R0,#30H ;R0做源数据指针, 指向30H单元
MOV R1,#40H ;R1做目标数据指针,指向40H单元
MOV R7,#8  ;设传送数据长度 
LLA: MOV A,@R0
MOVX @ R1,A
INC R0
INC R1
DJNZ R7,LLA
LLEND: SJMP LLEND    ;暂停
温馨提示:内容为网友见解,仅供参考
第1个回答  2019-08-09
我不知道你用的是什么单片机,所以不好回答,但是51单片机就是用idata和xdata

单片机编程将片内RAM单元30H~37H的数据块传送到片外RAM的40H~47H单元...
ORG 0000H\\x0d\\x0a LJMP MAIN\\x0d\\x0a \\x0d\\x0a ORG 0100H\\x0d\\x0aMAIN: MOV R0,#30H ;R0做源数据指针, 指向30H单元\\x0d\\x0a MOV R1,#40H ;R1做目标数据指针,指向40H单元\\x0d\\x0a MOV R7,#8;设传送数据长度 \\x0d\\x0...

简单的汇编语言程序设计!加急!
MOV 32H, 30H MOV A, 30H CLR C SUBB A, 31H ;(30H)-(31H)JC EXIT ;不够减转移 MOV 32H, 31H ;否则31H才是小数 EXIT:END --- 2. 将片内RAM单元中 30H~37H 的数据送到片外RAM的 40H~47H。MOV R0, #30H MOV R1, #40H MOV R2, #8 LOOP:MOV ...

单片机编程:片内PAN区30-34H单元中存放有5个十六进制数,编程计算这5个...
存到片内RAN区38H单元中。1、 设计一个循环结构,循环次数为8,使用指针R1,指向片内RAM区30-37H单元中的首地址。不断利用指针取数据。进行数据累加,结果存入片内RAM区38H、39H单元中.2、 将累加结果 除上8 即可以对片内RAM区39H、38H单元分别右移三位,结果保存在片内RAN区38H单元中。3...

单片机内部ram的地址范围是如何划分的?
3. 低128字节中的00H~1FH区域,共32个单元,通常作为工作寄存器区。4. 30H~37H区域,共80个单元,用作用户RAM,可以作为堆栈或数据缓冲。5. 80H~7FH单元组成高128字节的专用寄存器区,即特殊功能寄存区。这些区域在RAM中分散分布,并没有占满所有的地址空间。对空闲地址的操作是没有意义的。

单片机,用汇编求平均值,八个数据在30H---37H。求的平均值放在40H,小数...
MOV 37H, #89H ; ORG 0000H MOV 40H, #0 MOV 41H, #0 MOV R0, #30H LOP:MOV A, 41H ADD A, @R0 MOV 41H, A JNC $ + 4 INC 40H INC R0 CJNE R0, #38H, LOP ;;至此,求和完毕,和数在40H 41H中,不超过11位数。;;下面就要对和数...

单片机的内部ram是如何寻址的?
1. 在单片机的内部RAM中,低128字节的地址空间从20H到2FH,共计16个字节,可以通过位寻址方式来访问。这些位地址范围从00H到7FH。2. 如果位地址为48H,那么相应的单元地址可通过以下计算得出:单元地址 = 48H \/ 8 + 20H = 29H。3. 在特殊功能寄存区中,某些寄存器可以进行位寻址。例如,地址...

汇编语言
4.编程:将立即数55H送入内部RAM的40H单元。 (1)用立即寻址 (3)用寄存器寻址(2)用直接寻址 (4)用寄存器间接寻址5.用指令实现下述数据传送 (1)内部RAM20H送内部RAM40H (4)外部RAM2000H送内部RAM20H(2)外部RAM20H送R0 (5)外部ROM2000H送内部RAM20H(3)外部RAM20H送内部RAM20H (6)外部ROM2000H送外部RAM...

...将外部RAM4000H~4020H 单元,共33字节传送到的40H为当址 的内部RAM...
:MOV DPTR, #4000H MOV R0, #40H MOV R2, #33 LOOP:MOVX A, @DPTR MOV @R0, A INC DPTR INC R0 DJNZ R2, LOOP SJMP END

单片机30H到37H怎么清零
CLRRAM:MOV R0,#30H MOV R2,#8 CLR A LP:MOV @R0,A INC R0 DJNZ R2,LP RET

把片内RAM中地址30H到39H中的10个无符号数逐一比较,并按从小到大的顺 ...
MOV 37H,#3 MOV 38H,#2 MOV 39H,#1 LJMP START START: CLR 00H MOV R7,#9 MOV R0,#30H MOV A,@R0 LOOP: INC R0 CLR C SUBB A, @R0 JC NEXT ;如果A大于后一个数就往下执行 SETB 00H MOV A,@R0 ;如果A大于下一个数就交换次序 DEC ...

相似回答