看板Programming
标 题Re: 请问macro如何被C 呼叫?
发信站交大资讯次世代BS2 (Mon May 5 18:20:27 2008)
转信站ptt!ctu-reader!ctu-peer!news.nctu!csnews.cs.nctu!news.cs.nctu!BS2
※ 引述《[email protected] (甘愿为你~)》之铭言:
> ※ [本文转录自 ASM 看板]
> 作者: ast9869 (甘愿为你~) 看板: ASM
> 标题: 请问macro如何被C 呼叫?
> 时间: Sat May 3 17:35:14 2008
> ===================================================================
> //C51 的 code
> //ice_func.c
> #pragma asm
> getXRAM MACRO _Address, _Shift, _Data
> mov DPTR, #_Address
> movx _Data ,@DPTR+_Shift
> ENDM
> #pragma endasm
> ===================================================================
> //ice_func.h
> BYTE d1, d2;
> extern getXRAM(_Address, _Shift, _Data);
> 小弟不才…
> 这样好像不能用耶?请问各位先进要如何设定才能调用getXRAM呢?
当然不能用
因为你根本没搞清楚 macro 跟 function 到底差异在那里
对组译器而言 处理它们两者的策略是天差地远
--
▄▄▄▄▄▄▄ ▄▄▄▄ ▄▄▄▄▄▄ <telnet://bbs.cs.nctu.edu.tw>
█▄▄▄▄█ █ ▄▄▄▄▄█ Player: kisaraki
▄█▄▄▄▄█ ▄▄▄█ █▄▄▄▄▄ From: 220-141-2-157.dynamic.hinet
☆ 次世代BS2 ☆ 可申请个人板
150MB 相簿 http://pic.bs2.to 交大资讯人 250MB