主页
Top.Mail.Ru Yandeks.Metrika
论坛:“主要”;
当前存档:2002.01.08;
下载:[xml.tar.bz2];

向下

问题pascalshchik ??? 找到类似的分支


Art   (2001-12-18 17:19) [0]

编译器给出错误变量Indefinier Expected,并指向程序中两个常数相乘的位置???什么问题???



Владислав   (2001-12-18 17:20) [1]

Variable Indefinier Expected指的是:期望的变量标识符。

得出结论。

给出代码。



Art   (2001-12-18 17:23) [2]

System.Move(grecFixedDiskBoot,gsTempInput [1],aMaxTpStrLen);
gsTempInput [0]:= System.Char(aMaxTpStrLen);
IF(System.Pos(asCopyrightNotice,gsTempInput)<> 0)
然后开始
System.WriteLn(asProgramPrompt + asProgram +
“在固定磁盘0上找到的加载程序。”);
System.Write(asProgramPrompt +
“从已安装的副本(Y / N)复制描述字符串:”);
System.ReadLn(gsTempInput);

IF(System.UpCase(_fnchGetFirstChar(gsTempInput))<> achNo)
然后开始
System.WriteLn(asProgramPrompt +“Copy description strings。”);
System.Move(System.Mem [System.Seg(grecFixedDiskBoot.dbReservedCode):
(System.Ofs(grecFixedDiskBoot.dbReservedCode)+ aOS_Desc_Start)],
(“这会在此处转换常量)aOS_Desc_Str_Len_Ext * aMaxAvailLogicalPartition);
结束;
{IF-THEN}
结束
ELSE
System.WriteLn(asProgramPrompt + asProgram +“loader not present。”);
{IF-THEN}



Владислав   (2001-12-18 17:26) [3]

声明一个变量。 赋予它意义。 通过程序。
最有可能的是,该过程需要一个引用参数,并且您可以通过值传递。



MBo   (2001-12-18 18:40) [4]

你需要一个冒号吗?



Иван Шихалев   (2001-12-18 18:52) [5]

结肠到底是什么意思? 我们为初级课程编写了一本教科书,并开始计算出参数值和参数变量之间的差异。 查看帮助并找出程序的参数仍然很有用 移动 以及其中有多少。



Anatoly Podgoretsky   (2001-12-18 20:06) [6]

在我看来问题就在这里
“(这会在这里调用常量)”是这个变量吗? 那么逗号在哪里?
并且因为语法是正确的。
给出Move过程中使用的确切调用代码和变量声明。



Art   (2001-12-18 20:22) [7]

伙计们,我已经折磨了,现在我将提供所有代码!



Art   (2001-12-18 20:29) [8]

{* ========================== CONSTANTS PART ==================== ======== *}

CONST

{程序定义}
asPurpose =“OS-MultBoot”;
asVersion =“1.30”;
asAuthor =“Dima Stefankov”;
asCopyright =“Copyright(c)1987,1993”;
asProgram =“OS-Boot”;
asProgramPrompt = asProgram +“:”;

{退出代码}
errTerminateOK = 0;
errBootStrapDebug = 1;
errBadReadFixedDisk = 2;
errBadWriteFixedDisk = 3;
errUserInstallAbort = 4;
errUserWriteAbort = 5;
errMismatchLoaderCode = 6;

(其他)
aMaxTpStrLen = 255;
asBlank =“”;
achHexPrefix =“$”;
asFreeSlot =“<*** free slot ***>”;
asNonFreeSlot =“<*** disk slot ***>”;
aSectorSize = 512;
aSecSizeInWords = aSectorSize DIV 2;
aQuit =“Q”;
achYes =“Y”;
achNo =“N”;
aDefExt =“BIN”;
aDosExtMark =“。”;

{ASCII码}
achNULL = 00;
achLF = 10;
achCR = 13;
achOne =“1”;
achFour =“4”;

{*****注意!!! 下面的硬编码值。 *****}
{*****请仔细修改! *****}
{$ IFDEF DebugVersion}
adwBootSeg = $ 8000; {段在512K}
{$ ELSE}
adwBootSeg = $ 0000; {段在0K}
{$ ENDIF}
adwBootOfs = $ 7C00;
adwRelBootOfs = adwBootOfs + aSectorSize;
adwPartitionTable = $ 1BE;
aPartitonEntrySize = $ 10;
aMaxAvailLogicalPartition = 4;
adwBootMarkOfs = adwPartitionTable +
(aPartitonEntrySize *
aMaxAvailLogicalPartition);
adwBootSecID = $ AA55;

aOS_Desc_Str_Len = $ 16; {找到这些值}
aOS_Desc_Ofs = $ 04; {装配后}
aOS_Desc_Start = $ 40-1; {IPL程序。 }
aOS_Desc_Str_Len_Ext = aOS_Desc_Str_Len + 2;

aDebugOff = 0;
aDebugOn = 1;

aFarJumpOpCode = $ EA; {iAPX86操作码}

aRomKbdDriver = $ 16; {IBM PC BIOS功能}
aRomDiskDriver = $ 13;
aRomVideoDriver = $ 10;

{用于检查已安装的版本}
asCopyrightNotice =“OS-MultBoot(C)1992 D.Stefankov”;


{* ======================类型常数部分======================= === *}



{* strings *}
STR2 = STRING [2];
STR4 = STRING [4];
STR8 = STRING [8];

{*有关逻辑磁盘的信息*}
recLogicalPartition = RECORD
dbBootDriveMark:System.Byte; {} 00
dbStartingHead:System.Byte; {} 01
dwStartingCylSec:System.Word; {} 02
dbOperatingSystemID:System.Byte; {} 04
dbEndingHead:System.Byte; {} 05
dwEndingCylSec:System.Word; {} 06
ddPrecedingSecs:System.Longint; {} 08
ddSecsPerPartition:System.Longint; {} 0C
结束;
{* recLogicalPartition *}

{* Master Boot Sector *}
recMasterBoot = RECORD
dbReservedCode:ARRAY [0..adwPartitionTable-1] OF
System.Byte; {} 000
recDiskPartitionsTable:ARRAY [0..aMaxAvailLogicalPartition-1] OF
recLogicalPartition; {} 1BE
dwValidBootRecID:System.Word; {} 1FE
结束;
{* recMasterBoot *}


{* =========================== VARIABLES PART =================== ======== *}

VAR

grecFixedDiskBoot:recMasterBoot;
gfOutStream:recMasterBoot的文件;
gsTempInput:STRING;
gdwOurBootRecLen:System.Word;
gdwMemOfs:System.Word;
gbStatusOk:System.Boolean;
gdbIndex:System.Byte;
gchIn:System.Char;





Anatoly Podgoretsky   (2001-12-18 20:30) [9]

最好从这开始,但是你不需要所有的代码,只需要移动和必要的变量声明。



Art   (2001-12-18 20:33) [10]

System.Move(grecFixedDiskBoot,gsTempInput [1],aMaxTpStrLen);
gsTempInput [0]:= System.Char(aMaxTpStrLen); - 他跳过这一行意味着所有的参数!



Art   (2001-12-18 20:39) [11]

从SYSUTILS模块移动



Anatoly Podgoretsky   (2001-12-18 20:54) [12]

那么编译器会向你发誓这两个Move中的哪一个?
好吧,不要一滴一滴地向你提取相同的信息,很快就会觉得无聊。



Иван Шихалев   (2001-12-18 21:06) [13]

>他跳过这一行意味着所有选择!

System.Move(grecFixedDiskBoot,gsTempInput [1],aMaxTpStrLen);

这是三个参数

System.Move(System.Mem [System.Seg(grecFixedDiskBoot.dbReservedCode):( System.Ofs(grecFixedDiskBoot.dbReservedCode)+ aOS_Desc_Start)], aOS_Desc_Str_Len_Ext * aMaxAvailLogicalPartition);

这是两个参数

>从SYSUTILS模块移动

这是什么意思?



Art   (2001-12-18 21:07) [14]

从SYSUTILS模块移动



Art   (2001-12-18 21:10) [15]

好的锤子在模块上!
System.Move(System.Mem [System.Seg(grecFixedDiskBoot.dbReservedCode):( System.Ofs(grecFixedDiskBoot.dbReservedCode)+ aOS_Desc_Start)],

aOS_Desc_Str_Len_Ext * aMaxAvailLogicalPartition); - 发誓这件作品!



Art   (2001-12-18 21:12) [16]

人们!如果有人知道线程,那么每个人都会更容易获得装载机的来源!



Anatoly Podgoretsky   (2001-12-19 00:05) [17]

有必要没有两个,但有三个参数!!!



Владислав   (2001-12-19 07:44) [18]

> Art©(18.12.01 21:12)

如果你不“惹水”会更容易:-)

这是程序的声明:
procedure Move(const Source; var Dest; Count:Integer);

但是你如何使用它:
System.Move(System.Mem [System.Seg(grecFixedDiskBoot.dbReservedCode):( System.Ofs(grecFixedDiskBoot.dbReservedCode)+

找出差异......

如果有人知道从何处获取引导加载程序的源代码,那么每个人都会更容易!

“请给我一些水喝,否则你想吃,即使没有地方睡觉。”

祝你好运。



Арт   (2001-12-19 13:47) [19]

好的,对不起,谢谢大家!



Страницы: 1 整个分支

论坛:“主要”;
当前存档:2002.01.08;
下载:[xml.tar.bz2];

楼上









内存:0.63 MB
时间:0.034 c
3-21972
Wetnose
2001-12-06 08:30
2002.01.08
FIB +和发电机


1-22231
“利维坦”
2001-12-16 22:16
2002.01.08
BitBlt ......


1-22257
Dmitry1
2001-12-14 16:53
2002.01.08
美好的一天


6-22295
马梅德
2001-10-10 09:15
2002.01.08
从Excell导入


1-22077
艺术
2001-12-18 17:19
2002.01.08
问题pascalshchik ???





南非荷兰语 阿尔巴尼亚人 阿拉伯语 亚美尼亚 阿塞拜疆 巴斯克 白俄罗斯 保加利亚语 加泰罗尼亚 简体中文 中国(繁体) 克罗地亚 捷克 丹麦语 荷兰人 英语 爱沙尼亚语 菲律宾人 芬兰 法文
加利亚西语 格鲁吉亚语 德语 希腊语 海地克里奥尔语 希伯来语 印地语 匈牙利 北日耳曼语 印度尼西亚人 爱尔兰语 意大利语 日本性玩偶 韩语 拉脱维亚 立陶宛 马其顿 马来语 马耳他语 挪威语
波斯语 波兰语 葡萄牙语 罗马尼亚 俄语 塞尔维亚 斯洛伐克 斯洛文尼亚 西班牙语 斯瓦希里 瑞典语 泰国人 土耳其 乌克兰 乌尔都语 越南人 威尔士语 意第绪语 孟加拉 波斯尼亚
宿务 世界语 古吉拉特语 豪萨语 苗族 伊博 爪哇 卡纳达语 高棉 老挝 拉丁语 毛利 马拉 蒙古人 尼泊尔 旁遮普 索马里 泰米尔人 泰卢固语 约鲁巴语
祖鲁
英文 Французский Немецкий Итальянский Португальский 俄文 Испанский