0
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心
发布
  • 发文章

  • 发资料

  • 发帖

  • 提问

  • 发视频

创作活动

完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>

3天内不再提示

如何在KEIL下阅读汇编

STM32嵌入式开发 来源:STM32嵌入式开发 作者:STM32嵌入式开发 2022-04-18 11:13 次阅读

不同的平台的汇编代码是不一样的,最早的汇编在50年代就发明了,比很多人的父母的年龄都大,老掉牙,不用学习怎么写汇编。一个公司有一个人知道怎么写汇编就够了。但要学习读汇编

为什么学习汇编?

性能

直接翻译为机器语言,性能最高。优秀的C语言效率只能达到汇编的80%左右。其他高级语言跟汇编一比差得更远。语言越高级性能越差。很多bootloader和BIOS用汇编写,汇编操作的是电脑手机刚刚上电时,硬件和初始化的那些命令,它们的性能的要求比较高,效率高开机速度更快。

分析问题

个人认为,编程人与机器对话,我们写C,写JAVA,但是电脑并不认识这些语言,电脑只认识0和1;所以需要一个人来翻译这些语言,这个翻译官就是编译器,但是编译器不能百分之百准确的表达程序员的意思,也就是所谓的翻译有反义。例如,编译器为了性能好一点,可能会优化变量和语句,这个过程可能好心办坏事,把有用的操作优化了。因此只有看懂一些汇编语句,才能分析程序真正执行的流程。在问题难以定位的情况下,汇编可能是分析问题的最后一根稻草。

帮助理解硬件

有些学校的单片机课程是以汇编进行教学的,主要原因就是汇编更贴近硬件。不过我不赞成这种做法,C语言能快速做出一点东西,有利于学生在放弃之前,增加成就感,好坚持下去。但是汇编确实更贴近硬件。

LDR指令

为了便于理解下文,先介绍下LDR指令,其格式如下:

LDR{条件}   目的寄存器     <存储器地址>

作用:将 存储器地址 所指地址处连续的4个字节(1个字)的数据传送到目的寄存器中。LDR指令的寻址方式比较灵活,实例如下:

LDR R0,[R1]   ;将存储器地址为R1的字数据读入寄存器R0。LDR R0,[R1,R2]   ;将存储器地址为R1+R2的字数据读入寄存器R0。LDR R0,[R1,#8]    ;将存储器地址为R1+8的字数据读入寄存器R0。LDR R0,[R1],R2      ;将存储器地址为R1的字数据读入寄存器R0,并将R1+R2的值存入R1。LDR R0,[R1],#8      ;将存储器地址为R1的字数据读入寄存器R0,并将R1+8的值存入R1。LDR R0,[R1,R2]!    ;将存储器地址为R1+R2的字数据读入寄存器R0,并将R1+R2的值存入R1。LDR R0,[R1,LSL #3]     ;将存储器地址为R1*8的字数据读入寄存器R0。LDR R0,[R1,R2,LSL #2]   ;将存储器地址为R1+R2*4的字数据读入寄存器R0。LDR R0,[R1,R2,LSL #2]!;将存储器地址为R1+R2*4的字数据读入寄存器R0,并将R1+R2*4的值存入R1。LDR R0,[R1],R2,LSL #2     ;将存储器地址为R1的字数据读入寄存器R0,并将R1+R2*4的值存入R1。LDR R0,Label        ;Label为程序标号,Label必须是当前指令的-4~4KB范围内。

要注意的是:

LDR Rd,[Rn],#0x04   ;这里Rd不允许是R15。

另外LDRB 的指令格式与LDR相似,只不过它是将存储器地址中的8位(1个字节)读到目的寄存器中。LDRH的指令格式也与LDR相似,它是将内存中的16位(半字)读到目的寄存器中。

LDR R0,=0xff

这里的LDR不是arm指令,而是伪指令。这个时候与MOVE很相似,只不过MOV指令后的立即数是有限制的。这个立即数必须是0X00-OXFF范围内的数经过偶数次右移得到的数,所以MOV用起来比较麻烦,因为有些数不那么容易看出来是否合法。

如何在KEIL下阅读汇编

按d进入debug模式,在view下选择disassembly window 。

a6f3e324-beba-11ec-9e50-dac502259ad0.png

看光标,c文件下指向了main函数的第一行。

汇编窗口也指向了对应的语句。但是,在执行C语言的第一行之前,仍然有许多操作要做,比如变量放在哪?在哪里调用了main函数等,这些操作都被集成开发环境IDE给封装起来了。我们必须知道,在执行main函数之前,有许多事情要做,只不过,初学的时候不必理会。以下是C语言源码,功能是点亮LED。

//main.c#include   
int main(void){    RCC->APB2ENR |= RCC_APB2ENR_IOPBEN;
    GPIOB->CRL &= ~(0xf<<(1*4));
    GPIOB->CRL |= 0x2<<(1*4);     
    GPIOB->ODR &= ~(1<<1);
return0;}
//main.h#defineRCC_APB2ENR(*(unsignedint*)0x40021018)#defineGPIOB_CRL(*(unsignedint*)0x40010c00)#define GPIOB_ODR (*(unsigned int *)0x40010c0c)

汇编窗口往上翻,确实很多语句,先看这几行代码的汇编:

a7094b2e-beba-11ec-9e50-dac502259ad0.jpg

先说最常用的两句汇编:

LDR r0,[r1]    r0 = *r1
STR  r0,[r1]    *r1 = r0
MOV r0,r1    r1->r0拷贝

a71c49d6-beba-11ec-9e50-dac502259ad0.jpg

从内存0x0800 017c的32位数据拷贝到r0:

r0 = * 0x0800 017c

我们看到的 1000 4002其实 就是0x4002 1000。这里边有个知识点叫做大小端模式,以下简单讲解,不能理解就记住。

a72b214a-beba-11ec-9e50-dac502259ad0.png

这个数据是在地址是这么存放的:

7C 7D 7E 7F

00 10 02 40

实际数据是0x4002 1000

* 0x0800 017c=0x4002 1000

然后r0的值+0x18也就是24 因为这个是第6号(第6号就是第7个的意思)元素

得到r0 = *0x4002 1018,r0的值由一个地址,变成了地址所存放的数据。

然后是或0x08操作,结果再复制给r0,*0x4002 1018 |=0x08

给r1分配地址,这个地址也是0x4002 1000, r1 = *0x4002 1000

把r0存放的值,(不是r0的地址,)存到r1+18的空间上

*(r1+0x18) = r0

*0x4002 1018 = (*0x4002 1018 |=0x08)

*0x4002 1018|=0x08

最终结果:地址4002 1018的数,执行了或0x08的操作。再分析下一句 :

a73a7528-beba-11ec-9e50-dac502259ad0.jpg

前两句给r0分配空间,r0 = *0x4001 0c00

然后用BIC清除数据位,把4-7位清零,结果再赋值给r0。

*0x40010c00&=~(0xf0)r1 = *0x4001 0c00 *0x40010c00&=~(0xf0)

剩下的不再详细分析,直接给答案 :

a74b8804-beba-11ec-9e50-dac502259ad0.jpg

***0x40010c00|=0x200x4001 0c0c &= ~(0x02)*

最终,可以看到C语句被翻译成了意料之中的汇编语句,自己的意图被机器准确的理解了。

原文标题:学习STM32时为什么要学习汇编?

文章出处:【微信公众号:STM32嵌入式开发】欢迎添加关注!文章转载请注明出处。

审核编辑:汤梓红
  • STM32
    +关注

    关注

    2118

    文章

    8697

    浏览量

    341277
  • 汇编
    +关注

    关注

    2

    文章

    203

    浏览量

    25448
  • keil
    +关注

    关注

    65

    文章

    1105

    浏览量

    163365
  • 代码
    +关注

    关注

    26

    文章

    3187

    浏览量

    64762
收藏 人收藏

    评论

    相关推荐

    汇编学习入门之第一个汇编程序

    *经过理论铺垫,现在正式进入语言实际操作和效果展示,该篇文章主要是介绍常用命令与命令的惯常用法;编写、编译一般的汇编程序;阅读机器码。* *注意:本文汇编程序是X86环境的,移植其他平台可能产生错误。* 一、常用的命令 汇编代码主要由助记符和操作数组成,格式通常如下
    的头像 发表于 02-14 15:10 94次阅读
    <b>汇编</b>学习入门之第一个<b>汇编</b>程序

    嵌入式系统中ARM汇编的基本使用方法

    今天主要大家聊一聊,如何在ARM中使用汇编语言的方法。
    发表于 11-23 09:18 334次阅读

    何在Linux系统开启wifi

    大家好,我是ST。今天主要和大家聊一聊如何在Linux系统开启wifi。
    的头像 发表于 10-08 09:21 1762次阅读

    请教wch-link如何在keil中调试下载ch579程序?

    keil提示错误请教该如何在keil正确设置wchlink 谢谢
    发表于 07-04 06:13

    何在C语言程序集成汇编

    1.如何在C语言程序集成汇编总结:1)Turbo C:①使用预处理程序的伪指令#asm和#endasm,#asm用来开始一个汇编程序块,而#endasm指令用于该块的结束。/*#pragram
    发表于 02-23 06:56

    如何用Keil uVision5实现C语言与汇编语言的混合编程

    目录前言一、建立MDK5项目二、添加代码三、连接电路四、串口助手观察输出五、Keil上示波器波形检验前言本文运用MDK5生成芯片可执行hex文件,并在串口调试助手(这里)上面以查询方式连续发送
    发表于 02-15 07:48

    在stm32H743非中断模式使用主堆栈指针汇编语句

    通过Keil5,在stm32H743非中断模式,使用主堆栈指针汇编语句查看。理解这个汇编逻辑后,将有利于更自由的进行程序调试,查找BUG。文章涉及的汇编指令可以在工程中左侧:book
    发表于 01-25 06:16

    KEIL怎样去创建一种汇编语言STM32工程呢

    KEIL怎样去创建一种汇编语言STM32工程呢?有哪些操作步骤?
    发表于 01-19 07:02

    何在keil创建工程并调试STM32汇编源程序

    一、打开keil新建keil工程点击New μVision Project命名后点击保存选择芯片STM32103VE AREA MYDATA, DATAAREA MYCODE
    发表于 01-17 07:06

    如何利用Keil完成汇编语言编写

    目录利用Keil完成汇编语言编写最终生成 hex文件的各段的大小观察ARM寄存器变化状况总结参考资料利用Keil完成汇编语言编写1、新建工程,点击上方的的Project->New
    发表于 01-12 06:58

    汇编

    1.如何在C语言程序集成汇编总结:1)Turbo C :①使用预处理程序的伪指令#asm和#endasm,#asm用来开始一个汇编程序块,而#endasm指令用于该块的结束。/*#pragram
    发表于 12-31 18:53 1次下载
    <b>汇编</b>

    keil软件是干嘛的?keil软件怎么用?

    编译51和STM32单片机的程序。但是无际单片机编程研究出了可以共用的方法,这块可以先关注我们,后续会教大家怎么去设置。前面说了keil是一款开发环境工具,那它主要的作用有以下2个:1.编写单片机程序单片机支持用汇编和c语言来编写程序,汇编一般用的资源非常少的单片机,我做了10年单片机开发
    发表于 12-29 19:43 3次下载
    <b>keil</b>软件是干嘛的?<b>keil</b>软件怎么用?

    Keil使用STlink重定向printf的配置

    Keil使用STlink重定向printf的配置1. printf 重定向Keil默认使用Micro LIB库,该库调用 fputs 实现 printf,所以需要重新定义fputs函数,以重定向
    发表于 12-27 18:43 17次下载
    <b>Keil</b><b>下</b>使用STlink重定向printf的配置

    Keil下完成一个汇编程序的编写

    Keil下完成一个汇编程序的编写,学习动态调试变量;并注意观察最终生成hex文件的各段的大小,以及Hex文件前8个字节内容,解释其含义。(3)在上面Keil 汇编基础上用汇编程序完成1~100 求和 (1+2+3+…+100)的程序,并将计算结果通过串口输出;用汇编程序完成一
    发表于 12-20 07:43

    KeilSTM32的C与汇编语言混合编程

    KeilSTM32的C与汇编语言混合编程C语言调用汇编函数,以及汇编语言调用C语言的修改
    发表于 12-20 06:06

    如何利用keil去新建一种汇编工程呢

    首先建立keil工程,首先点击project->new project新建工程,命名为001;在弹出的窗口中选择芯片格式Device intel->8031AH,点击OK按钮;在弹出
    发表于 12-20 06:04

    Keil软件有哪些性能

    ,我们就知道有一个叫Keil的软件。在开发单片机时,使用的是C语言或者汇编语言,我们知道,这两种语言都不能直接烧写到单片机里面,执不执行暂且不说,光是代码的体积,就足以撑破整个单片机。所以,我们需要一
    发表于 12-13 08:04

    如何使用汇编语言在Keil_v5和Proteus进行LED闪烁操作

    基于ARM,用汇编语言在Keil_V5和Proteus仿真实现点灯操作1、打开keil创建新工程由于Proteus不支持STM32F103ZET6的芯片,所以我们这里选择C6的芯片。ARM
    发表于 12-13 07:17

    介绍keil的使用

    单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。Keil提供了包括C编译器、宏汇编、链接器、库管理和一个功能强大的仿真调试器等在内的完整...
    发表于 12-08 07:52

    KEIL中启动文件详解(汇编语言)

    KEIL中启动文件详解(汇编语言)
    发表于 12-04 12:06 8次下载
    <b>KEIL</b>中启动文件详解(<b>汇编</b>语言)

    stm32在keil和IAR中的汇编启动代码不相同

    最近学习cortex-A8内核的soc,在Linux环境开发,从汇编到C、uboot分析移植。过程中发现,使用的汇编keil中同是arm内核的stm32单片机的汇编不太相同。然后大概的查了一
    发表于 12-03 12:51 1次下载
    stm32在<b>keil</b>和IAR中的<b>汇编</b>启动代码不相同

    【IAR汇编】IAR汇编/单片机启动代码汇编

    【IAR汇编】IAR汇编/单片机启动代码汇编
    发表于 12-03 10:21 9次下载
    【IAR<b>下</b>的<b>汇编</b>】IAR<b>下</b>的<b>汇编</b>/单片机启动代码<b>汇编</b>

    何在Keil for ARM V5中编写代码实现学号自循环?

    何在Keil for ARM V5中编写代码实现学号自循环?
    发表于 12-03 06:06

    Cortex-M系列:非中断、特权模式汇编语言

    通过Keil5,在stm32H743非中断模式,使用主堆栈指针汇编语句查看。理解这个汇编逻辑后,将有利于更自由的进行程序调试,查找BUG。文章涉及的汇编指令可以在工程中左侧:book
    发表于 12-01 12:06 8次下载
    Cortex-M系列:非中断、特权模式<b>下</b>的<b>汇编</b>语言

    何在keil上编写代码并烧录到STM32上去呢

    何在keil上编写代码并烧录到STM32上去呢?怎样在串口通讯的基础上修改代码呢?
    发表于 12-01 07:48

    何在keil ARM Compiler6.10.1 C++stm32里使用printf?

    何在keil ARM Compiler6.10.1 C++stm32里使用printf?
    发表于 12-01 06:57

    keil中创建C51的汇编工程

    keil中创建C51的汇编工程,并编写程序在proteus中绘制电路将编译好的汇编程序烧录进仿真电路在keil中创建C51的汇编工程,并编写程序首先需要下载安装好keil,使用的keil建议keil
    发表于 12-01 06:49

    何在Keil下去使用STlink对printf进行重定向呢

    何在Keil下去使用STlink对printf进行重定向呢?对printf重定向有哪些步骤?
    发表于 12-01 06:48

    何在Keil uVision4 MDK配置开发STM32F103Z?

    何在Keil uVision4 MDK配置开发STM32F103Z?
    发表于 11-30 06:46

    何在Keil下完成一个汇编程序的编写呢

    stm32有哪三种BOOT模式?分别有何差异?如何在Keil下完成一个汇编程序的编写呢?
    发表于 11-29 07:12

    如何使用汇编进行stm32F103的点灯实验?

    何在Keil上练习汇编的编写和调试?如何使用汇编进行stm32F103的点灯实验?
    发表于 11-29 06:12

    何在keil中去查看stm32startup启动文件的汇编指令呢

    stm32startup启动文件的主要功能有哪些?如何在keil中去查看stm32startup启动文件的汇编指令呢?
    发表于 11-26 07:28

    何在Keil MDK 5里面直接创建使用HAL库的STM32工程?

    何在Keil MDK 5里面直接创建使用HAL库的STM32工程?
    发表于 11-26 07:17

    何在Keil下去完成一个汇编程序的呢

    何在Keil下去完成一个汇编程序的呢?如何去新建基于MDK创建纯汇编语言的STM32工程呢?
    发表于 11-26 07:11

    请问怎样在Keil下去完成一个汇编程序的编写呢

    请问怎样在Keil下去完成一个汇编程序的编写呢?
    发表于 11-26 07:09

    keil教程之创建基础软件工程

    单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。Keil提供了包括C编译器、宏汇编、链接器、库管理和一个功能强大的仿真调试器等在内的完整...
    发表于 11-25 14:36 3次下载
    <b>keil</b>教程之创建基础软件工程

    何在KEIL C51 软件上创建一个工程

    何在KEIL C51 软件上创建一个工程
    发表于 11-23 17:06 1次下载
    如<b>何在</b><b>KEIL</b> C51 软件上创建一个工程

    何在keil中生成hex文件,并下载到51单片机中

    何在keil中生成hex文件,并下载到51单片机中
    发表于 11-23 16:20 12次下载
    如<b>何在</b><b>keil</b>中生成hex文件,并下载到51单片机中

    Keil4中嵌入汇编语句

    File 为灰色鄙人在keil4中开发51内核单片机时,因实际需求需要在C语言代码中利用#pragma ASM 和 #pragma ENDASM 嵌入部分汇编代码,格式如下:#pragma ASM MOV A, R7 ...#pragma ENDASM将上述有效的代码块加入程序之后,将整个工程进行编
    发表于 11-23 16:20 9次下载
    <b>Keil</b>4中嵌入<b>汇编</b>语句

    C51_keil汇编+proteus仿真(小白教程)

    C51_keil汇编+proteus仿真(小白教程)
    发表于 11-23 09:36 16次下载
    C51_<b>keil</b><b>汇编</b>+proteus仿真(小白教程)

    汇编】AT89C52点亮一盏LED灯(汇编语言)

    学习利用汇编语言写单片机程序的第一步是要学习汇编语言的相关理论知识,那么实践操作的第一步肯定是从点灯开始啦!编译环境:keil4编译语言:汇编语言内容:  一、keil4建立AT89C52的工程环境
    发表于 11-22 20:51 18次下载
    【<b>汇编</b>】AT89C52点亮一盏LED灯(<b>汇编</b>语言)

    何在Keil5中去使用Eigen库呢

    怎样去安装keil5软件呢?如何在Keil5中去使用Eigen库呢?
    发表于 11-11 07:46

    何在Proteus 8x中进行汇编SRC设置

    我想在单片机C51程序中嵌入一段汇编代码(图1)。如果是采用Keil编译器,可以勾选“Generate Assembler SRC File”与“Assemble SRC File”两项设置,产生
    发表于 11-04 08:51

    何在51汇编中查表?

    何在51汇编中查表?
    发表于 10-15 07:40

    如何使用keil4软件将编写的C语言程序汇编汇编语言?

    如何使用keil4软件将编写的C语言程序汇编汇编语言?
    发表于 10-14 07:15

    何在stm32f103上进行汇编语言测试呢

    何在stm32f103上进行汇编语言测试呢?有哪些步骤?
    发表于 10-08 08:45

    Keil下完成一个汇编程序的编写

    文章目录要求一、在Keil下完成一个汇编程序的编写1、新建工程2、配置环境3、编译测试(1)测试代码(2)仿真器设置(3)编译调试4、hex文件分析要求在Keil下完成一个汇编程序的编写,学习动态
    发表于 08-11 08:04

    何在keil中生成hex文件

    何在keil中生成hex文件,并下载到51单片机中一、keil中生成hex文件1、在keil中点击工具栏的options for target…,2、在弹出来的窗口中点击output–勾选
    发表于 07-15 07:18

    C语言反汇编相关资料推荐

    这里使用的是keil4软件,将编写的C语言程序汇编汇编语言。这里只用最简单的C语言做了一参考,所举的例子是最简单的,只能用于了解一汇编的表达方式。如图所示,条件判断语句的汇编语句表达是赋值后
    发表于 07-01 09:24

    如何用Keil生成bin、汇编、C与汇编混合文件?

    1、话题引入 在使用Keil集成开发环境中大伙使用频率高的文件大概就是.hex吧,如果考虑内存布局等会使用到.map文件,如果遇到了疑难bug还会在仿真过程中看一看汇编窗口栏。 然而bin文件作为
    的头像 发表于 03-09 13:59 3152次阅读
    如何用<b>Keil</b>生成bin、<b>汇编</b>、C与<b>汇编</b>混合文件?

    请问如何在COSMIC C文件中使用汇编语言?

    如何分配变量到指定的地址如何在COSMIC C文件中使用汇编语言如何观察RAM/FLASH/EEPROM的最终分配情况如何生成hex格式的输出文件什么是MEMORY MODELlkf 文件的作用如何实现位操作
    发表于 11-20 07:48

    怎么在KEIL4使用库来建立工程?

    何在KEIL4使用库来建立工程啊
    发表于 09-02 00:01

    如何使用KEIL C51和proteus实现C51汇编程序的设计实例

    本文档的主要内容详细介绍的是如何使用KEIL C51和proteus实现C51汇编程序的设计实例。
    发表于 07-30 17:35 16次下载
    如何使用<b>KEIL</b> C51和proteus实现C51<b>汇编</b>程序的设计实例

    何在KEIL C中实现直接寻址和间接寻址

    本文档的主要内容详细介绍的是如何在KEIL C中实现直接寻址和间接寻址。
    发表于 07-02 17:42 0次下载
    如<b>何在</b><b>KEIL</b> C中实现直接寻址和间接寻址

    何在Keil5开发TI-M4程序环境搭建的教程免费下载

    本文档的主要内容详细介绍的是如何在Keil5开发TI-M4程序环境搭建的教程免费下载。
    发表于 05-05 08:00 7次下载
    如<b>何在</b><b>Keil</b>5<b>下</b>开发TI-M4程序环境搭建的教程免费下载

    何在Keil C环境编译CY7C68013的大型固件代码?

    亲爱的各位,CY7C68013Runa固件可能大于8kb/16kb吗?如何在Keil C环境编译CY7C68013的大型固件代码?我想用CY7C68013的8051来控制CD和数据采集单元。由于
    发表于 04-30 14:11

    请问keil调试中如何通过黄色箭头指向的汇编语言找到对应C代码

    keil调试中如何通过黄色箭头指向的汇编语言找到对应位置的C代码?
    发表于 12-25 09:06

    keil工程中的一个h文件变成了汇编

    所有的keil工程文件都放在移动硬盘里插在台式机上使用的,然后今天取下来插到笔记本上,程序也正常编译了,是正常的。但是刚才又把移动硬盘插回到台式机上,发现之前笔记本上用过的那个keil项目中的一个h文件变成了汇编语言,编译也通不过了,出现了60个错误。有没有人遇到过?
    发表于 11-15 23:38

    如何阅读汇编代码?

    嗨,那里。我想问一阅读汇编代码有什么技巧吗?例如:这个C代码:翻译成:我试着读这个小片段,但是它很难理解。1。Goto 0xC12。XORLW 0x0(任何值XOLD与0是相同的值,如果W是0和
    发表于 09-26 09:48

    何在Keil ARM MDK中实现延迟功能

    何在Keil ARM MDK中实现延迟功能,等待给定时间(以微秒为单位),可以重新编译为Keil项目设置中定义的任何合理时钟速度?所有这一切都没有使用计时器。
    发表于 08-22 10:29

    汇编语言问题请教专家

    工程师您好!           请如何在汇编语言中调用c语言定义的数组?最好举例说明一,谢谢!
    发表于 06-21 13:05

    keil如何使用?图文教程告诉你keil怎么使用

    本文先后分别介绍了keil4和keil uvision5的使用教程使用教程。Keil C51是美国Keil Software公司出品的51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势。
    发表于 04-09 15:12 8.8w次阅读
    <b>keil</b>如何使用?图文教程告诉你<b>keil</b>怎么使用

    Keil软件“C语言”与“汇编”混编 —— 相关知识整理

    Keil软件“C语言”与“汇编”混编 —— 相关知识整理
    发表于 09-21 14:15 5次下载
    <b>Keil</b>软件“C语言”与“<b>汇编</b>”混编 —— 相关知识整理

    手机PDF阅读器如何在PDF文件中查找某个词

    我们在手机上阅读PDF文件,就需下载手机PDF阅读器软件。当我们在阅读PDF文件的时候,想快速查找某个词,该怎么做?手机PDF阅读器如何在PDF文件中查找某个词呢?你不是也曾经困惑过呢?现在小编就来
    发表于 09-07 17:49

    keil C251载链接

    keil C251载链接
    发表于 11-05 10:20 99次下载

    Keil_uV3

    Keil_uV3载,感兴趣的可以看看。
    发表于 07-08 11:45 7次下载

    关于在keil_C51中嵌入汇编以及C51与A51间的相互调用

    关于在keil_C51中嵌入汇编以及C51与A51间的相互调用,有兴趣的同学可以下载学习
    发表于 05-03 16:36 14次下载

    [LPLD]KEIL使用OSJTAG开发

    简单介绍了Keil如何使用OSJTAG来开发,主要适合用JTAG仿真器的学习者和用keil软件。
    发表于 03-18 17:08 0次下载

    按钮控制LED程序(按亮再按一灭)【汇编版】

    按钮控制LED程序(按亮再按一灭)【汇编版】按钮控制LED程序(按亮再按一灭)【汇编版】
    发表于 12-29 11:04 13次下载

    Keil MDK5.12版本 C编程里面嵌入汇编指令的方法(STM32)

    Keil5 C编程里面嵌入汇编指令的方法(STM32)方法一: 单条指令嵌入方式方法二:纯汇编函数的形式给出当然,还有别的办法,希望各位继续补充
    发表于 03-28 00:58

    keil中如何在一个工程使用多个C文件?

    如题,在keil中如何在一个工程使用多个C文件?我试过在一个Group中添加三个文件,一个main(),一个timer.h,一个timer.c,然后在main.c和timer.c都
    发表于 08-11 18:04

    求教汇编高手,汇编变量定义

    求教汇编高手,汇编中变量的定义,以前都是用equ直接分配地址给变量,看网上说这样不好,试了一用 db,dw 定义,可为什么不能通过,data segment就有报错,编译软件使用的是keil
    发表于 05-28 10:42

    keil中使用汇编编写stc12c5620ad系列单片机头文件

    俺比较老土,虽然玩单片机很久但是还是喜欢用汇编来编程,因此整理了一个适用与汇编程序用的stc12c5620ad用的头文件,存放未知在n:\keil\c51\asm目录中文件名扩展名为inc,使用时
    发表于 09-06 10:27

    使用keil 汇编调用C无法实现

    汇编调用C,用keil debug一直在C程序里跑,而不是从汇编文件运行,但是用ADS里运行完全没问题;反过来用C 调用汇编,貌似也不行啊,但是ADS却可以我去,求解答啊~~~{:3:}{:5:}{:5:}{:5:}
    发表于 06-27 22:24

    何在keil 4中添加STC单片机型号

    本帖最后由 eehome 于 2013-1-5 10:00 编辑 收集一个在keil 4中添加STC单片机的方法。提问:1.如何在keil 4 中添加华邦单片机型号?(求详细介绍)
    发表于 10-08 22:38

    KEIL4设置 C代码嵌入汇编后无法设置断点,求拯救

    我用的是KEIL4,想在C代码中嵌入汇编代码,请教百度大神折腾半天,经过一系列设置算是成功嵌套进去了。但修改KEIL的默认设置后在调试的时候就无法设置断点了。现在的问题是要么纯C的代码不嵌入汇编
    发表于 06-25 19:51

    【跟我学单片机C语言】无限制中英文版keil c51

    工具,全Windows界面,本站提供了一个keil教程(软件的使用方面),使您能在很短的时间内就能学会使用keil c51来开发您的单片机应用程序 。 另外重要的一点,只要看一编译后生成的汇编代码,就能
    发表于 11-29 11:42

    何在arm模式读取cpsr寄存器的进位位值?

    在arm模式的启动文件中有msr和mrs指令可以实现对cpsr的读写,但是用户程序c语言中嵌入 msr和mrs汇编程序总是报错(环境是keil carm)各位大侠有没有什么方法可以实现读取cpsr
    发表于 09-20 10:33

    Linux中的汇编语言

    阅读Linux源代码时,你可能碰到一些汇编语言片段,有些汇编语言出现在以.S为扩展名的汇编文件中,在这种文件中,整个程序全部由汇编语言组成。有些汇编命令出现在以.c为扩展名
    发表于 04-07 20:43 53次下载

    Keil经典视频教程

    Keil经典视频教程 Keil C51开发系统基本知识  1. 系统概述  Keil C51是美国Keil Software公司出品的51系列兼容单片机C语言软件开发系统,与汇编相比,C语言
    发表于 03-29 14:03 363次下载

    何在C程序中使用汇编

    怎样在C程序中使用汇编,如何在C程序中使用汇编:方法一:在每个汇编语句前加asm即可。如:void reset_data(void) { asm mov r0,#0dfh asm
    发表于 09-23 23:43 55次下载

    基于Keil的入门实例教程

    基于Keil的入门实例教程: 1 Keil工程文件的建立、设置与目标文件的获得3 Keil 程序调试窗口2 Keil的调试命令、在线汇编与断点设置4 Keil 的辅助工具和部份高级技巧
    发表于 08-10 08:36 347次下载

    何在VxWorks实现NAT/NAPT的方法

    何在VxWorks实现NAT/NAPT的方法
    发表于 03-29 12:25 19次下载

    Keil的调试命令、在线汇编与断点设置

    Keil 的调试命令、在线汇编与断点设置上一讲中我们学习了如何建立工程、汇编、连接工程,并获得目标代码,但是做到这一步仅仅代表你的源
    发表于 01-18 09:38 1w次阅读
    <b>Keil</b>的调试命令、在线<b>汇编</b>与断点设置

    keil c51 v8.12

    Keil C51 是目前世界上最好的51单片机的汇编和c语言的开发工具。支持汇编,c语言以及混合编程。同时具备功能强大的软件仿真和硬件仿真(用mon51协议)。发布日期:2008.1
    发表于 10-07 09:56 565次下载
    <b>keil</b> c51 v8.12<b>下</b>载

    keil使用教程

    Keil C51是美国Keil Software公司出品的51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。用过汇
    发表于 10-06 18:13 285次下载

    keil软件的介绍

    keil软件的介绍学习要点:软件的安装,创建项目,源程序的汇编或编译,目标文件的概念 Keil C51 µVision2集成开发环境是Keil Software,Inc/Keil Elektronik GmbH开发的基于80C51内核的
    发表于 10-06 18:00 111次下载

    Keil uVision2 教程,uVision2教程

    Keil uVision2 教程,uVision2教程Keil Software 的8051开发工具提供以下程序你可以用它们来编译你的C源码汇编你的汇编源程序连接和重定位你的目标文件和库文件创建HEX文件调试你的目标程
    发表于 09-18 16:05 129次下载

    下载硬声App