Ⅰ C51编译器支持的存储器类型有哪些
c51存储器类型有bit
sbit
data
xdata
bdata
pdata
sfr
code等,可能不全面有遗漏
对应的物理存储器是:
bit,即位数据:数据存储器位寻址区,即20h~2fh的范围,共16个字节,16*8=128个位,位地址00h~7fh,连续的。
sbit:特殊功能寄存器中的位数据:只有能够被8整除的那些特殊功能寄存器中的各个位才能被称为sbit,位地址80h~ffh,不连续的,间断的。
data:数据区,对51为00h~7fh共128个字节,对52为00h~ffh,共256个字节,用mov寻址,前128用直接寻址或寄存器(r0~r7)寻址,后128用r0、r1间接寻址。
xdata:外部数据区,0000h~ffffh连续,用dptr间接寻址(movx指令)
bdata:位寻址去的字节,20h~2fh
sfr:特殊功能寄存器(80h~ffh),直接寻址
pdata:外部数据区,p2口保持数据,用r0r1间接寻址(movx指令)
code:程序存储器,用movc指令只读
Ⅱ lx51与BL51,AX51与A51,CX51与C51分别有什么区别
详见A51手册的附录D:汇编器的差异<br /><br />A51与BL51:<br />针对传统8051单片机的开发工具,最大支持32×64KB Code Bank。<br /><br />AX51与LX51:<br />针对传统8051单片机以及部分衍生型号的开发工具,最大支持外扩16 MB的xdata或code。AX51汇编器是A51汇编器的超集,两者的主要差异包括:<br />1.AX51中的数值默认为32位,A51是16位;<br />2.AX51不包含8051的默认SFR定义;<br />3.AX51支持更多的特殊符号,例如ECALL等;<br />4.生成的目标文件不同。AX51生成的目标文件为OMF-251/51MX格式,不受传统OMF-51格式中每个模块不得超过256个外部符号及段的限制。
Ⅲ linux下 c51,avr,msp单片机编译器 有哪些
楼主:
1,linux:是操作系统,本身带有完整的编译系统,如安装红帽子软件。
2,c51的编译软件主要有KEIL,IAR或仿真器自带编译软件。
3,avr,msp主要有KEIL,IAR或仿真器自带编译软件。
Ⅳ 主流C51单片机编译器比对
int short 的大小是因机器而异嘛(准确点应该是编译器)。你都说了人家规定的是“最小”为16位,又不是只能是16位,也没有说两者应该相等(事实上是short不超过int就OK啦)。所以当然可以short类型为半个机器字长,而int类型则为一个机器字长的啦。
“C++标准规定了每个算术类型的最小存储空间,但他并不自知编译器使用更大的存储空间 ”
说简单点就是C++规定了个最小的值,但是将你的代码编译成机器码的编译器则确定了你这个长度值为多少。因为C++是一种语言,一个规范,或者说只是一种规定,然后要将你按这种规范写的代码编译成能在机器上运行的代码的是编译器。而在不同的机器上运行的程序的实际结构是不一样的,比如单片机与PC相差就很大。要将按相同规范写的程序在各种各样乱七八糟的机器上运行,就需要相应的编译器了。所以实际的大小是由你编译代码的编译器确定的。
PS:当然当前一般的PC上int都是32位,short16位的。因为现在32位的机子是主流嘛。如果你不写什么单片机的程序可以不用太在意这个问题。但是写单片机程序时就要注意了,因为一般一个单片机的编译器可以编译很多种型号芯片的代码,而这些型号有可能从8位到32位都有……
Ⅳ C51用汇编语言写,用什么编译器
汇编语言的51程序可以用KEIL编译,也可以用ASM51编译。
Ⅵ 主流C51单片机编译器比对
主要是Keil和IAR。
Keil是大众化的,用的人多。
IAR专业,代码效率高,用的人就不是那么多了。
Ⅶ keil c51的简介
支持8051微控制器体系结构的Keil开发工具,适合每个阶段的开发人员,不管是专业的应用工程师,还是刚学习嵌入式软件开发的学生。 Keil C51目前由ARM国内授权代理商提供技术支持和销售等相关服务。 产业标准的Keil C编译器、宏汇编器、调试器、实时内核、单板计算机和仿真器,支持所有的251系列微控制器,帮助你如期完成项目进度。
以下图表显示Keil的开发工具以及它们相互之间的接口。
KEIL C51开发工具旨在解决嵌入式软件开发商面临的复杂问题。
当你开始一个新项目,只需简单的从设备数据库选择使用的设备,uVision IDE将设置好所有的编译器、汇编器、链接器和存储器选项。
包含大量的例程,帮助你着手使用最流行的嵌入式8051设备。
Keil μVision调试器准确地模拟8051设备的片上外围设备(IC、CAN、UART、SPI、中断、I/O端口、A/D转换器、D/A转换器和PWM模块)。模拟帮助你了解硬件配置,避免在安装问题上浪费时间。 此外,使用模拟器你可以在没有目标设备的情况下编写和测试应用程序。
当你准备在目标硬件上测试软件应用时,可以使用MON51、MON390、NONADI、或者FlashMON51目标监视器、ISD51 In-System调试器、ULINK USB-JTAG适配器在目标系统上下载并测试程序代码。
Ⅷ gcc编译器和嵌入式keil的C51编译器有什么不
前者是通用的C语言编译器,后者相当于是个定制版。C51中定义了一些原先C语言中没有的类型以及寄存器定义、同时鉴于单片机通常只有几KB的内存空间进行了代码生成量优化,专门用于单片机的开发,这些都是在GCC这样标准的ANSI C编译器中所没有的。
Ⅸ c51 编译器 哪个好
keil吧 最常用
Ⅹ C51编译器的全部作用
后面也少了两个}
i的作用范围是在整个main函数里面,
K是在定义处到main的最后,
static int j 是静态类型,也是在整个main函数里,只是跳出函数后值不变
另外,虚机团上产品团购,超级便宜