请问C语言如何转换成汇编语言?

请问C语言如何转换成汇编语言?,第1张

分类: 电脑/网络 >>程序设计 >>其他编程语言

问题描述:

请问C语言如何转换成汇编语言?请问用什么工具可以实现?

请大家帮我把这个C语言转换成汇编语言下,谢谢!

59秒自动计数器

#include<reg51.h>

#define uchar unsigned char

uchar j,k,i,a,A1,A2,second

*** it dula=P2^6

*** it wela=P2^7

uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,

0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71}

void delay(uchar i)

{

for(j=ij>0j--)

for(k=125k>0k--)

}

void display(uchar sh_c,uchar g_c)

{

dula=0

P0=table[sh_c]

dula=1

dula=0

wela=0

P0=0xfe

wela=1

wela=0

delay(5)

P0=table[g_c]

dula=1

dula=0

P0=0xfd

wela=1

wela=0

delay(5)

}

void main()

{

while(1)

{

second++

if(second==60)

second=0

A1=second/10

A2=second%10

for(a=50a>0a--)

{ display(A1,A2)}

}

}

十分感谢,小弟初学,请见谅!!

解析:

你做的是单片机的C,那你用KEIL就可以进行反汇编。找到view->disassembly就可以看到汇编代码

如果是VC则在编译器命令行参数再加 /FA 则会生成汇编代码。如果参数是 /FAs 则会同时将源码和汇编代码。

/FA 程序集代码;.asm

/FAc 机器码和程序集代码;.cod

/FAs 源代码和程序集代码;.asm

/FAcs 机器码、源代码和程序集码;.cod

/Fa的用法

/Fa 为编译中的每个源代码文件创建一个源文件.asm。

/Fa文件名 将文件名.asm 放到当前目录中。仅在编译单个源代码文件时有效。

/Fa文件名.扩展名 将文件名.扩展名放到当前目录中。仅在编译单个源代码文件时有效。

/Fa目录\ 为编译中的每个源代码文件创建一个源文件.asm,并将其放到指定目录中。请注意必须有后缀反斜杠。只允许使用当前磁盘上的路径。

/Fa目录\文件名 将文件名.asm 放到指定目录中。仅在编译单个源代码文件时有效。

/Fa目录\文件名.扩展名 将文件名.扩展名放到指定目录中。仅在编译单个源代码文件时有效。

如果你是用gcc 或 g++编译器,如dev c++则加入命令行参数 -S 即可

在单片机中,C语言转换成汇编语言有一个小窍门,这要借助于KEILC这个编译软件,步骤如下:

1、运行KEIL,建立工程,导入C语言。

2、编译生成HEX文件,按CTRL+F5进入DEBUG模式。

3、点击View菜单,选择Disassembly Window打开汇编窗口,就可以看到C以及对应的汇编代码了。


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

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

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

发表评论

登录后才能评论

评论列表(0条)

保存