谁能把这段汇编语言转成c语言啊?求大神搭救

DATRD BIT P3.7 DATWR BIT P3.6 CE BIT P3.4 CD BIT p3.5 DAT EQU P2 DAT_L EQU 32H DAT_H EQU 33H COMM EQU 34H ;==========键盘========= key_data equ p1 page_up bit p1.0 page_dw bit p1.1 page_enter bit p1.2 ;=======蜂鸣器========== fengming_out bit p0.0 org 0000h ljmp main ;ds1621用I2C主程序 org 0100h main: mov sp,#5fh ;设置堆栈栈顶 lcall T6963_initialize lcall eeprom_main ;事先读出原存储的温度上限 lcall key_init lcall key_in main_next: lcall display LJMP main_next ret ;===========eeprom pro======= eeprom_main: lcall read_eeprom_Byte mov key_data_h,a ret ;=========键盘初始化========== key_init: setb page_up setb page_dw setb page_enter ret ;==========键盘有无按键====== key_in: mov a,key_data ;读键盘输入 anl a,#00001000b cjne a,#8,key_in_yes;无键盘按下,推出 ljmp key_exit key_in_yes: ; cjne a,#2,key_exit ;向下 KEY_next1: mov a,key_data ;向上 anl a,#00001000b cjne a,#8,KEY_next1 ;等待释放按键 key_next: lcall disp_key_eeprom_h mov a,key_data ;判++ -- enter lcall DELAY_1S anl a,#00000111b cjne a,#7,key_in_enter ljmp key_next key_in_enter: cjne a,#3,key_in_up mov a,key_data_h ;enter,保存退出 lcall Write_eeprom_Byte ljmp key_exit key_in_up: cjne a,#6,key_in_dw inc key_data_h ljmp key_next key_in_dw: dec key_data_h ljmp key_next key_exit:
因为程序太长,就摘了一段出来,主要是想看看如何转换的思路,例如这段
;=======蜂鸣器==========
fengming_out bit p0.0
org 0000h
ljmp main ;ds1621用I2C主程序
org 0100h
main:
mov sp,#5fh ;设置堆栈栈顶
lcall T6963_initialize
lcall eeprom_main ;事先读出原存储的温度上限
lcall key_init
lcall key_in

main_next:

lcall display
LJMP main_next
ret

第1个回答  推荐于2016-03-06
#include"reg52.h"
#define u8 unsigned char
#define u16 unsigned int

sbit fengming_out=P0^0;

main()
{
sp=0x5f;

T6963_initialize();

eeprom_main();

key_init();

key_in();

while(1)
{
display

}
}

上面那部分太乱了,不好看追问

大神能否再帮我看看另一个汇编问题?这是出租车计价器短了一段 复位和暂停键代码,请帮帮编写一下

在振荡器运行时,有两个机器周期(24个振荡周期)以上的高电平出现在此引腿时,将使单片机复位,只要这个脚保持高电平,51芯片便循环复位。复位后P0-P3口均置1引脚表现为高电平,程序计数器和特殊功能寄存器SFR全部清零。当复位脚由高电平变为低电平时,芯片为ROM的00H处开始运行程序。

追答

你的另一个问题具体是要我做什么

追问

大神方便加个QQ么,在这地方太小,贴不上去,说不清,具体程序我已经写好了,只需要加点东西。其实在这里http://zhidao.baidu.com/question/624216479740708564.html?sort=6#answer-1728673356有最初的汇编代码,只是缺少了暂停键和复位键的代码,能补一下么?只要汇编就好。

本回答被提问者采纳
第2个回答  2014-07-04
你将这段程序重新发一下,太乱了,没法看。追问

在这里http://zhidao.baidu.com/question/624216479740708564.html?sort=6#answer-1728673356有最初的汇编代码,只是缺少了暂停键和复位键的代码,能补一下么?只要汇编就好。

追答

不对,这个链接是taxi计价程序,不是你这段代码程序。

追问

恩,这是我第二个问题,那个代码实在是长,我已经自己动手改了,还是很感谢你的回答。

追答

这第二个我回答完了,程序发给了你给的这个链接的提问者

相似回答