PASCAL没怎么学,要将它翻成c程序,工作需要,我就晕了。望路过的大侠们不吝赐教。
procedure set_f9;
var face,i,s1,s2:word;
i3,i4,i5,i6,f8f9:byte;
ch:char;
begin
inline($fa);
port[$1f6]:=$e0;
repeat
f8f9:=port[$1f7];
until (f8f9 div 128)=0;
port[$1f7]:=$f8;
repeat
f8f9:=port[$1f7];
until (f8f9 div 128)=0;
i6:=port[$1f6] mod 16;
i6:=$e0+(i6 mod 16);
i5:=port[$1f5];
i4:=port[$1f4];
i3:=port[$1f3]; port[$1f6]:=i6;
port[$1f5]:=i5;
port[$1f4]:=i4;
port[$1f3]:=i3;
port[$1f2]:=00;
port[$1f7]:=$f9;
repeat
f8f9:=port[$1f7];
until (f8f9 div 128)=0;
inline($fb);
end;
1。我仔细看了程序(这只是PASCAL源代码的一个部分)其他部分也没定义port,我在c 中翻译时没定义就出错提示了,是不是定义了就可以了?P中的port是端口符号,c中定义为什么呢?
2。在tc下编译又有报subscripting missing [ in function set_9。不明白。我有用[]的啊
3。illegal character‘$'(0x24) in function set_f9 c中没有此符号?还是我输入有问题。应该不是后者,因为tc下shift+数字键4就出来那符号了。应该也不会没有吧,要不怎么翻成c 啊。
哎~问题太多了,先问这么多吧,静侯侠音!
在新手乐园贴过一天了,一个回复都没有哦。
是我心急了吧,等ing……
我会再试试,不过难道这程序里port[]是数组的意思?
最近才接触pascal,感觉port[]是端口,网上查到$是单元符号,可是不知道到底是怎么一回事哦,
它是对端口赋值了?
怎么转化成c 呢?
郁闷中……
这几天没什么进展