求助汇编高手,请把这段C程序翻译成汇编语言, 急!
请汇编高手把这段C程序翻译成汇编语言,并附解释,谢谢!比较急,明天下午选标。
#include <reg52.H>
#include <intrins.h>
#define uint unsigned int
#define uchar unsigned char
sbit led1 = P2^0;
sbit ledlk = P1^0;
sbit smglk = P1^1;
sbit smgbitlk = P1^2;
void delay(uint ms)
{
uint i, j;
for (j = 0; j < ms; j++) for (i = 0; i < 120; i++);
}
void main()
{
uchar i;
smglk = 0;
smgbitlk = 0;
ledlk = 1;
P2 = 0xfe;
while(1) {
i = P2;
P2 = _crol_(i,1);
delay(500);
}
}
悬赏分:100 - 解决时间:2009-8-31 21:22
提问者: ******** - 中级弟子 二级
//---------------------------------------------------------------
最佳答案:
试试下列程序。
ORG 0
SJMP _START
ORG 0030H
_START: ;C语言原文对照
CLR P1.1 ; = smglk = 0;
CLR P1.2 ; = smgbitlk = 0;
SETB P1.0 ; = ledlk = 1;
MOV P2, #0xFE ; = P2 = 0xfe;
_LOOP: ; = while(1) {
MOV A, P2 ; = i = P2;
RL A ; = _crol_(i,1);
MOV P2, A ; = P2 = _crol_(i,1);
CALL _DL500 ; = delay(500);
SJMP _LOOP ; =}
_DL500: ; = delay(500)
MOV R5, #24
_DL1: MOV R6, #100
_DL2: MOV R7, #100
DJNZ R7, $
DJNZ R6, _DL2
DJNZ R5, _DL1
RET
END
//---------------------------------------------------------------
经过仿真运行后,和C程序效果相同。
回答者: 做而论道 - 解元 五级 2009-8-31 00:59
提问者对于答案的评价:非常厉害!
原题网址:http://zhidao.baidu.com/question/114817878.html
//---------------------------------------------------------------