C语言程序编程题:请说明一下下面程序完成的功能。

C语言程序编程题:请说明一下下面程序完成的功能。,第1张

这个问题我当年摸索了2个多小时才彻底弄懂。。。分献给你。。

void move(char x,char y) /*对move函数的声明*/

if(n= =1)

move(one,three)//如果只有一个盘子,只需要将第一个搬到第三个柱子上就完成任务了或烂隐

else//如果还历亏有n(n != 1),只需要三步就可以完成

{

hanoi(n-1,one,three,two)//步骤1:把上面的n-1个通过第三个柱子搬到第二个柱子衫厅上去

move(one,three)// 步骤2: 把最下面的那个大盘子N移动到第三个柱子上去

hanoi(n-1,two,one,three)//步骤3: 把第二个柱子上面的n-1个盘子通过第一个移动到第三个柱子上去

}

}

void move(char x,char y)/*定义move函数*/

{

printf(“%c――>%c\n”,x,y)//move就不用多说了,cong柱子x到 y

}

ORG 0000H

MOV DPTR,#0100H

MOV R0,#20H

MOV R1,#10H

LOOP:MOV A, @R0

MOVX@DPTR,A

INC R0

INC DPTR

DJNZ R1, LOOP

END

功能:将内部RAM中20H开始的16个数据传输到外部RAM地址滑雹0100开始的存储单元中。

2.仔则让局细阅读下面这段程序,说明它的功能是什么:

ORG 0000H

MOVA, 30H

PUSH ACC

ANL A, #0FH

MOV 32H, A

POP A

ANL A, #0F0H

SWAP A

MOV 31H , A

END

将30H的第四位赋孙让值给32H,30H的高四位赋值给31H


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/12520130.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-26
下一篇 2023-05-26

发表评论

登录后才能评论

评论列表(0条)

保存