;
MOV R0, #30H
MOV DPTR, #2040H ;假设8155片内RAM首地址为2040H
MOV R2, #10H
LOOP:
MOV A, @R0
MOVX @DPTR, A
INC R0
INC DPTR
DJNZ R2, LOOP
END
以下回答如果是V就表示正确 如果是X就表示错误(单片机以mcs-51系列为准)
1、 指令字节数越多,执行时间越长。( X)
《mcs-51 单片机共有11条指令,按照指令字节数和机器周期数分为六类,单字节单周期,单字节双周期等,在单片机里面执行时间是看指令的周期数,周期 数越大,它的执行时间就会越长,和字节数没有关系,字节数只会关系到指令的存储空间。》
2、 内部寄存器Rn(n=0~7)作为间接寻址寄存器。( x)
《寄存器R0,R1和数据指针DPTR可以作为间接寻址寄存器,而Rn是通用工作寄存器,用寄存器寻址方式》
3、 8031芯片内一共有4K的ROM,256字节的RAM。(X )
《8031芯片内部无ROM它必须外接ROM内部有RAM 》
4、 8位构成一个字节,一个字节所能表达的数的范围是0-255。( V)
5、 8051中的工作寄存器就是内部RAM中的一部份。(V)
《00H到1FH》
6、 8051中特殊功能寄存器(SFR)就是内部RAM中的一部份。(V)
《80H到FFH》
7、 MOV A,@R0这条指令中@R0的寻址方式称之为寄存器间址寻址。(V )
《((R0))--A》
8、 MOV A,30H这条指令执行后的结果是(A)=30H (X )
《应该是 (30H)=>A》
9、 MOV A,@R7,将R7单元中的数据作为地址,从该地址中取数,送入A中。(X )
《在mcs-51系列中没有这条指令 只有mov a,@Ri (i=0&1)》
10 SP称之为堆栈指针,堆栈是单片机内部的一个特殊区域,与RAM无关。(X )
《堆栈指针位于用户ram区 30H到7FH》
11、MCS-51单片机片外数据存储器与扩展I/O口统一编址。( V )
12、指令字节数越多,执行时间越长。( X )
13、子程序调用时自动保护断点和现场。( X )
(在设计子程序的时候必须考虑现场保护)
14、内部寄存器Rn(n=0~7)作为间接寻址寄存器。( X )
15、中断响应最快响应时间为三个机器周期。( V )
16、MCS-51单片机片外数据存储器与扩展I/O口统一编址。( V )
17、指令字节数越多,执行时间越长。( X )
18、子程序调用时自动保护断点和现场。( X )
19、内部寄存器Rn(n=0~7)作为间接寻址寄存器。( X )
20、中断响应的最快响应时间为3个机器周期。( V )
21、8051单片机片内RAM的地址空间为00H~7FH。( X)22、8051单片机访问片外ROM是以PSEN作为读选通信号。 ( V)23、算术运算类指令一般不影响标志位。 (X )24、CPU每取一个指令字节,立即使程序计数器PC自动加1。(V )25、-13的反码是11110010,补码是11110011。 ( V)26、所谓的单片机,就是将CPU、存储器、定时计数器、中断功能以及I/O设备等主要功能部件都集成在一块超大规模集成电路的微型计算机。(V )27、第一组工作寄存器R0~R7的地址是10H~17H。 ( X)28、串行口控制寄存器SCON(地址是98H)是可按位寻址的控制寄存器。 (X )29、十进制数1975转换为BCD码为1100101110101B。(X)30、判断程序对错:十进制数19和13相减。 (X ) MOV A,#19H CLR C SUBB A,#13H DA A(x为16进制)
31.8051每个中断源相应地在芯片上都有其中断请求输入引脚( X ) 32.程序计数器PC不能对它进行读写 *** 作( V ) 33.8051单片机的栈底单元是不能利用的,因此,它是一个闲置单元( V ) 34.8051单片机对最高优先权的中断响应是无条件的( X ) 35.中断初始化时,对中断控制器的状态设置,只可使用位 *** 作指令,而不能使用字节 *** 作指( V ) 36.在一般情况8051单片机允许同级中断嵌套( X ) 37.8051单片机,程序存储器数和数据存储器扩展的最大范围都是一样的( X ) 38.单片机系统扩展时使用的锁存器,是用于锁存高8位刂罚nbsp; V )
这段程序有很多小错误啊,编译不能通过的。我就按我的理解解释一下这段程序吧。
ABSACCH 提供了前面三个的宏定义,xbyte会将对应的值赋给P0,P2,就是不仅定义PA8155、PB8155、COM8155三个变量对应的外部地址还对应着P0,P2。
unsigned char DispTab[]={0xC0,0xF9,0xA4,0xB0,0X99,0x92,0x82,0xf8,0x80,0x90};//定义字符数组
unsined int i,j;//定义for循环的i,j变量
COM8155=0X81;//COM8155赋初值
PA8155=0xef;//PA8155赋初值
while(1)
{
for(i=0;i<10;i++)
{
PB8155=DispTab[i];//对应i的值,将DispTab[]数组的值重复赋值给PB8155,对应实现控制P0,P2输出
for(j=0;j<10000;j++);//做延时的功能,执行for一万次达到延时效果
}
if(i=9)
i=0;
}
形式的程序,不便于看,以及修改。
程序太长,也可以放在你的百度空间,大家去看。
---------
程序,重新写了,放在:
>
仿真运行截图:
以上就是关于将单片机片内RAM区首地址为30H的10H个字节数据依次传送至8155片内首地址为40H的RAM区全部的内容,包括:将单片机片内RAM区首地址为30H的10H个字节数据依次传送至8155片内首地址为40H的RAM区、8155芯片中其i/o口寄存器是怎么寻址的、请问一下这个51单片机程序的意思: #include(reg51.h) #include(absacc.h)等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)