怎么把汇编转换成C语言
ORG0000HAJMPMAINORG0003HAJMPin0;光敏电阻ORG0013HORG0050HMAIN:MOVP0,#00000001B;置初始值in0可重复触...
ORG 0000H
AJMP MAIN
ORG 0003H
AJMP in0 ;光敏电阻
ORG 0013H
ORG 0050H
MAIN: MOV P0, #00000001B ;置初始值in0可重复触发,灯灭
MOV TMOD, #00000010B ;方式2,8位自动重装计数器
MOV TCON, #00010000B ;开启计数器T0
MOV IE, #10000111B ;开启所有中断
SJMP $ ;灯慢慢变亮
DET1: MOV P0, #00000001B
CALL TIME0 ;灯亮度延时10ms
MOV P0, #00000011B
CALL TIME0
MOV P0, #00000101B
CALL TIME0
MOV P0, #00000111B
CALL TIME0
MOV P0, #00001001B
CALL TIME0
MOV P0, #00001011B
CALL TIME0
MOV P0, #00001101B
CALL TIME0
MOV P0, #00001111B
CALL TIME1
RETI;灯慢慢熄灭
DET0: CALL TIME1 ;延时1分钟
MOV TCON, A
ANL A, #1
JZ LOOP
MOV P0, #00001111B
CALL TIME0
MOV P0, #00001101B
CALL TIME0
MOV P0, #00001011B
CALL TIME0
MOV P0, #00001001B
CALL TIME0
MOV P0, #00000111B
CALL TIME0
MOV P0, #00000101B
CALL TIME0
MOV P0, #00000011B
CALL TIME0
MOV P0, #00000001B
RETI
LOOP: ret
;延时10ms
TIME0: SETB TR0
MOV R0, #250
MOV R1, #20
D_1: DJNZ R0, D_1
MOV R0, #250
DJNZ R1, D_1
CLR TR0
RET
;延时1分钟
TIME1: SETB TR0
MOV R0, #250
MOV R1, #200
MOV R2, #60
D_2 : DJNZ R0, D_2
MOV R1, #200
DJNZ R1, D_2
MOV R2, #60
DJNZ R2, D_2
CLR TR0
RET
END 展开
AJMP MAIN
ORG 0003H
AJMP in0 ;光敏电阻
ORG 0013H
ORG 0050H
MAIN: MOV P0, #00000001B ;置初始值in0可重复触发,灯灭
MOV TMOD, #00000010B ;方式2,8位自动重装计数器
MOV TCON, #00010000B ;开启计数器T0
MOV IE, #10000111B ;开启所有中断
SJMP $ ;灯慢慢变亮
DET1: MOV P0, #00000001B
CALL TIME0 ;灯亮度延时10ms
MOV P0, #00000011B
CALL TIME0
MOV P0, #00000101B
CALL TIME0
MOV P0, #00000111B
CALL TIME0
MOV P0, #00001001B
CALL TIME0
MOV P0, #00001011B
CALL TIME0
MOV P0, #00001101B
CALL TIME0
MOV P0, #00001111B
CALL TIME1
RETI;灯慢慢熄灭
DET0: CALL TIME1 ;延时1分钟
MOV TCON, A
ANL A, #1
JZ LOOP
MOV P0, #00001111B
CALL TIME0
MOV P0, #00001101B
CALL TIME0
MOV P0, #00001011B
CALL TIME0
MOV P0, #00001001B
CALL TIME0
MOV P0, #00000111B
CALL TIME0
MOV P0, #00000101B
CALL TIME0
MOV P0, #00000011B
CALL TIME0
MOV P0, #00000001B
RETI
LOOP: ret
;延时10ms
TIME0: SETB TR0
MOV R0, #250
MOV R1, #20
D_1: DJNZ R0, D_1
MOV R0, #250
DJNZ R1, D_1
CLR TR0
RET
;延时1分钟
TIME1: SETB TR0
MOV R0, #250
MOV R1, #200
MOV R2, #60
D_2 : DJNZ R0, D_2
MOV R1, #200
DJNZ R1, D_2
MOV R2, #60
DJNZ R2, D_2
CLR TR0
RET
END 展开
2015-05-08
展开全部
如果 只是简单的几行,可以把编译后的exe文件,用系统自带的debug(windows键+R打开 运行窗口 输入debug 空格 exe的路径)打开debug后,输入U可以看到几行汇编代码。
如果是源代码 在vs编译器中调试运行,菜单上的:调试--窗口--反汇编 可以查看,如果是其他编译器 仔细找找也带反汇编的
要资料的话 [天书夜读-从汇编语言到Windows内核编程].谭文.邵坚磊. 这本书的基础部分里 有c语言与汇编的转换
如果是源代码 在vs编译器中调试运行,菜单上的:调试--窗口--反汇编 可以查看,如果是其他编译器 仔细找找也带反汇编的
要资料的话 [天书夜读-从汇编语言到Windows内核编程].谭文.邵坚磊. 这本书的基础部分里 有c语言与汇编的转换
追问
不好意思啊 我没太懂 这个汇编程序怎么生成.exe文件啊
展开全部
将汇编转换成C语言有以下几种方法:
1、用专门的转换软件,不过到目前为止,没有效果较好的转换软件。
2、手动转换,读懂汇编语言所表达的意思,再编制C语言完成相同的功能。
1、用专门的转换软件,不过到目前为止,没有效果较好的转换软件。
2、手动转换,读懂汇编语言所表达的意思,再编制C语言完成相同的功能。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |