标题: 怎么把c语言的程序变成汇编的程序 [打印本页]

作者: 1663845911    时间: 2017-7-5 13:15
标题: 怎么把c语言的程序变成汇编的程序
#include<reg51.h>

#define uchar unsigned char

#define uint unsigned int


sbit RED_1=P0^0; //东西向灯

sbit YELLOW_1=P0^1;

sbit GREEN_1=P0^2;

sbit RED_2=P0^3; //南北向灯

sbit YELLOW_2=P0^4;

sbit GREEN_2=P0^5;

uchar number=0,type=1; //闪烁次数,操作类型变量

//延时子程序

void Delay(uint x)

{

uchar i;

while(x--) for(i=0;i<120;i++);

}

//交通灯切换程序

//总共分为四种情况,如此循环

//注:1为关灯,0为开灯

traffic()

{

switch(type)

{

case 1: //东西向绿灯与南北向红灯亮5秒

RED_1=1;YELLOW_1=1;GREEN_1=0;

RED_2=0;YELLOW_2=1;GREEN_2=1;

Delay(5000);

type=1;

break;

case 2: //东西向、南北向黄灯闪烁2秒

Delay(500);

YELLOW_1=~YELLOW_1;GREEN_1=1;
YELLOW_2=~YELLOW_2;RED_2=1;

if(++number!=4) return; //闪烁2次

number=0;

type=2;

break;

case 3: //东西向红灯,南北向绿灯亮

RED_1=0;YELLOW_1=1;GREEN_1=1;

RED_2=1;YELLOW_2=1;GREEN_2=0;

Delay(5000);

type=3;

break;



}

}


void main()

{

while(1) traffic();

}



作者: ppp6666    时间: 2017-7-5 15:07
给你这个

新建文件夹.zip

1.17 MB, 下载次数: 18


作者: ppp6666    时间: 2017-7-5 15:10
给你这个,可以转换各种语言

新建文件夹.zip

1.17 MB, 下载次数: 17


作者: ahshmj    时间: 2017-7-5 15:10
为什么要变成汇编指令呢?如果你能熟练掌握汇编,自己根据c程序改写应该没问题。如果不熟悉汇编,改了看不明白也没多大用。

另外想说的,用c语言通过keil汇编的那个不行,差的太远,想学习汇编不能用这个。你就看看一个延时程序就会明白。
作者: wkdsky    时间: 2017-7-5 15:37
你这个不可能自动转成汇编的  自己学一下51的指令集吧
作者: gjz971009    时间: 2017-7-5 15:42
先编译成程序然后反编译成汇编语言
作者: hange_v    时间: 2017-7-5 16:33
网站主页不是有51汇编教程吗???
作者: dancjy    时间: 2017-7-5 17:09
有许多c编译成汇编的软件
作者: 12864l    时间: 2017-7-5 17:42
目前汇编不怎么用了吧,都在用C语言编写,你是在弄论文吗?必须要转汇编?
作者: Angle灬夕阳    时间: 2017-7-6 00:20
用keilc51软件点击ctrl+f5即可
作者: yzwzfyz    时间: 2017-7-6 01:22
最简单:不用改!
C原本就必须将其转成汇编的,在文档中找一下。
退一万步说,将其它运行代码反汇编一下也可以。不过极难读懂。




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1