导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→c编程请教[baolqkun]

 *第25196篇: c编程请教

  
楼 主:baolqkun 2004年8月30日10:56
 c编程请教
如果用汇编编程,
直接可以访问地址
如MOV A,30H

如果我用C编程的话
怎么定义才能把地址定义成30H
需要调用什么头函数????

  
2楼:baolqkun 2004年8月30日11:05
 _at_ 这种做法可取吗?除了这种做法,还有别的方法吗?
  
3楼:zjsx133 2004年8月30日15:52
 用指针
unsigned char *p=0x30;
  
4楼:baolqkun 2004年8月31日15:29
 我试了一下,你这样定义好像不对呀
  
5楼:Love单片机 2004年8月31日08:35
 这样的
用关键字sfr来定义内部I/O口地址,对于片外的地址,引用头文件include "absacc.h",程序中用 #define 地址名 XBYTE 地址   来定义
  
6楼:baolqkun 2004年8月31日15:24
 _at_也可以实现,不知道这种方法好不好?
  
7楼:guest 2004年9月1日10:28
 C语言的特点就是可以对内存直接访问,(通
C语言的特点就是可以对内存直接访问,(通过指针),定义一个指针就可以,应该不能通过指针访问你想访问的30,而只能访问指针地址,
楼上的 _at_ 是可行的,你试一试就知道了,我只看到别人用.
  
8楼:lenglianxi 2004年9月1日11:53
 几种方法
  
9楼:lenglianxi 2004年9月1日11:56
 几种方法
1、
     include   <absacc.h>  
     ACC = DBYTE[0x30];
2、
   char x _at_ 0x30;
   ACC = x;
3、
  char data * p = 0x30;
  ACC = *p;

其中哪种方法都可以实现你的要求。


>>>>>>对该主题发表你的看法

本主题贴数9,分页: [第1页]


[上一篇主题]:请教老古(希望尽快回复)

[下一篇主题]:Landway你好,我想和你联系4001卡开始信号