<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
<channel>
<title><![CDATA[从新到新 - 关于大机]]></title>
<link>http://www.isingapore.org/</link>
<description><![CDATA[男人味就是勇敢,豁达.]]></description>
<language>zh-cn</language>
<copyright><![CDATA[Copyright 2005 PBlog2 v2.4]]></copyright>
<webMaster><![CDATA[L#isingapore.org(从新到新)]]></webMaster>
<generator>PBlog2 v2.4</generator> 
<image>
	<title>从新到新</title> 
	<url>http://www.isingapore.org/images/logos.gif</url> 
	<link>http://www.isingapore.org/</link> 
	<description>从新到新</description> 
</image>

			<item>
			<link>http://www.isingapore.org/default.asp?id=151</link>
			<title><![CDATA[COBOL NOTES（三）]]></title>
			<author>L#isingapore.org(习惯有你)</author>
			<category><![CDATA[关于大机]]></category>
			<pubDate>Tue,15 May 2007 15:46:30 +0800</pubDate>
			<guid>http://www.isingapore.org/default.asp?id=151</guid>	
		<description><![CDATA[磁盘顺序文件&nbsp;<br/>&nbsp;<br/>1＞&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;OPEN语句&nbsp;<br/><br/>　除了可以用INPUT　OUTPUT方式找开文件外，还可以用I－O方式，即被打开的文件既可以输入，也可以输出&nbsp;<br/><br/>OPEN　I－O　DAFILE。&nbsp;<br/><br/>　　注：不能同时用2种不同的方式打开同一个文件&nbsp;<br/><br/>2＞&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;CLOSE　FILE1　WITH　LOCK　，FILE2。&nbsp;<br/><br/>　表示FILE1关闭后加以“锁住”，FILE2关闭后不锁住&nbsp;<br/><br/>3＞&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;REWRITE语句&nbsp;<br/><br/>意为重写，用相同长度的记录代替原来的记录，它只能用于由I－O方式打开的文件&nbsp;<br/><br/>以INPUT方式打开的文件只能读，以OUTPUT方式打开的文件只能写，以I－O方式打开的文件只能读和重写　<br/>&nbsp;<br/>]]></description>
		</item>
		
			<item>
			<link>http://www.isingapore.org/default.asp?id=150</link>
			<title><![CDATA[COBOL NOTES（二）]]></title>
			<author>L#isingapore.org(习惯有你)</author>
			<category><![CDATA[关于大机]]></category>
			<pubDate>Tue,15 May 2007 15:17:14 +0800</pubDate>
			<guid>http://www.isingapore.org/default.asp?id=150</guid>	
		<description><![CDATA[字符处理&nbsp;<br/><br/>一．STRING　语句&nbsp;<br/><br/>77　　A　　PIC　　X（3）　　VALUE　‘ABC’。&nbsp;<br/><br/>77　　B　　PIC　　X（5）　　VALUE　　ALL“＊”。&nbsp;<br/><br/>PROCEDURE&nbsp;&nbsp;DIVISON.&nbsp;<br/><br/>&nbsp;&nbsp;&nbsp;…&nbsp;<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;STRING&nbsp;&nbsp;A&nbsp;DELIMITED&nbsp;BY&nbsp;SIZE&nbsp;INTO&nbsp;B.&nbsp;<br/><br/>&nbsp;&nbsp;&nbsp;…&nbsp;<br/><br/>STRING语句执行后，B中内容为&nbsp;<br/><br/>ABC**&nbsp;<br/><br/>1.STRING语句经常把多个发送字符串连接成一个较成的字符串。&nbsp;<br/><br/>STRING&nbsp;A&nbsp;B&nbsp;C&nbsp;DELIMITED&nbsp;BY&nbsp;SIZE&nbsp;INTO&nbsp;D.&nbsp;<br/><br/>2.发送不仅可以是变量，也可以是常量（不得为象征常量ALL）&nbsp;<br/><br/>　　&nbsp;STRING&nbsp;PROVINCE&nbsp;SPACE&nbsp;CITY&nbsp;“&nbsp;&nbsp;&nbsp;“&nbsp;STREET&nbsp;DELIMITED&nbsp;BY&nbsp;SIZE&nbsp;INTI&nbsp;ADDRESS.&nbsp;<br/><br/>&nbsp;&nbsp;SPACE,一个空格，同时在城市与街道间插入3个空格&nbsp;<br/>&nbsp;<br/>DELIMITED&nbsp;短语&nbsp;<br/><br/>DELIMITED　BY　（定界）短语，除了使用保留字SIZE，表示整个发送项参加连接操作外，还可以在BY的后面使用字符值常量或字符型数据项。BY后面的字值常量或数据项内容称作定界符。在执行STRING语句时，发送项的内容以定界符为界，定界符左边的内容参加合并操作，定界符本身及其右方的内容舍去不用。如果发送项中没有与定界符相匹配的内容，整个发送项全参加合并操作。定界符可以是单字符，也可以是多字符的字符串　。&nbsp;<br/><br/>77　A　PIC　X（5）　VALUE　“ABCDE”。&nbsp;<br/><br/>77　B　PIC　X（5）　VALUE　“EFGHI”。&nbsp;<br/><br/>77　C　PIC　X（10）　VALUE　ALL“＊”。&nbsp;<br/><br/>STRING　A　DELIMITED　BY　“C”，B　DELIMITED　BY　“F“　&nbsp;<br/><br/>　　　　　INTO　C。&nbsp;<br/><br/>则执行后，以的内容为&nbsp;<br/><br/>ABE＊＊＊＊＊＊＊。&nbsp;<br/>&nbsp;<br/>POINTER短语&nbsp;<br/><br/>POINTER（指针）短语是针对接收项的，因为每个STRING语句只能有一个接收项，所以每个STRING语句只能有一个POINTER短语。&nbsp;<br/><br/>POINTER短语，用于规定接收项开始接收字符的起始位置。这个位置用接收项字符位置的相对号来表示，接收项左起第1字节的相对号是1，第2字节的相对号是2，。。。。。<br/>77　P&nbsp;PIC&nbsp;99.&nbsp;<br/><br/>MOVE&nbsp;2&nbsp;TO&nbsp;P.&nbsp;<br/><br/>STRING&nbsp;A&nbsp;B&nbsp;DELIMITED&nbsp;BY&nbsp;“C”&nbsp;<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;INTO&nbsp;C&nbsp;WITH&nbsp;POINTER&nbsp;P.&nbsp;<br/><br/>执行后，C的内容为&nbsp;<br/><br/>*ABEFGHI**&nbsp;<br/><br/>&nbsp;P的值变为9（2＋7）。&nbsp;<br/><br/>&nbsp;&nbsp;<br/>&nbsp;<br/>OVERFLOW　短语&nbsp;<br/><br/>产生溢出的情况&nbsp;<br/><br/>1．&nbsp;&nbsp;接收项已满，尚有未发送的字符。&nbsp;<br/><br/>2．&nbsp;&nbsp;接收项已满，尚有未经处理的发送项&nbsp;<br/><br/>3．&nbsp;&nbsp;指针短语中的指针变量值不合理，小于1或大于接收项长度。&nbsp;<br/><br/>STRING　A　B　BY　SIZE　INTO　C　WITH　POINTER　P　ON　OVERFLOW　GOTO　ERR－OVER。&nbsp;<br/>&nbsp;<br/>二．UNSTRING语句&nbsp;<br/><br/>UNSTRING语句与STRING语句作用相反，将字符串拆成若干字符串&nbsp;<br/><br/>规则：&nbsp;<br/><br/>如果发送项长度小于各接收项长度之和。&nbsp;<br/><br/>1．&nbsp;&nbsp;某接收项未装满&nbsp;<br/><br/>2．&nbsp;&nbsp;某接收项刚好装满，其右方各接收项没有接收内容。&nbsp;<br/><br/>对于1，系统将未接收项中尚未接收内容的字符位置填充空格，该接收项以右各接收项内容不变。&nbsp;<br/><br/>对于2，凡未已旧换新内容的项均维持原内容不变&nbsp;<br/><br/>UNSTRING　A　INTO　B　C。&nbsp;<br/>&nbsp;<br/>DELIMITED　语句&nbsp;<br/><br/>定界符可以是单字符，也可以是多字符，但不可角STRING语句那样，采用保留字SIZE，必须是字符字值常量或字符型数据项。&nbsp;<br/><br/>如果发送项有多个字符或字符串与定界符匹配，则第一个匹配定界符以左的全部内容，作为一个发送字符串，发送给第一接收项，第二个匹配定界符以左，第一匹配定界符以右的内容，作为又一发送字符串，发送给第二接收项。若2个匹配定界符连在一起，相应接收项则接空格或0。&nbsp;<br/><br/>一个定界短语可有多个定界符，各定界符之间用OR连接，OR表示各定界符只要一个与发送项匹配成功，就确定发送。&nbsp;<br/><br/>UNSTRING　A　DELIMITED　BY　“，“　OR　”。“　INTO　B　C。&nbsp;<br/><br/>有时要以连续出现的同样字符作为定界符，在这种情况下，可在字符字值前冠以保留字ALL。&nbsp;<br/><br/>&nbsp;&nbsp;<br/>&nbsp;<br/>COUNT　短语&nbsp;<br/><br/>COUNT　短语是把发送字符串的长度记录在一个用户定义的数据项中&nbsp;<br/><br/>如A内容：ABCD//E5&nbsp;<br/><br/>B:PIC&nbsp;XXX&nbsp;<br/><br/>C:PIC&nbsp;XXX&nbsp;<br/><br/>D:PIC&nbsp;XXX&nbsp;<br/><br/>执行&nbsp;<br/><br/>UNSTRING&nbsp;A&nbsp;DELIMTED&nbsp;BY&nbsp;‘/’&nbsp;<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;INTO&nbsp;B&nbsp;COUNT&nbsp;IN&nbsp;COUNT-B&nbsp;<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;C&nbsp;<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;D.&nbsp;<br/><br/>则B：ABC&nbsp;<br/><br/>C:&nbsp;&nbsp;&nbsp;&nbsp;(3个空格)&nbsp;<br/><br/>D:E5&nbsp;(后有一个空格)&nbsp;<br/><br/>COUNT－B值为4。&nbsp;<br/>&nbsp;<br/>DELIMITER短语&nbsp;<br/><br/>DELIMITER（定位符存贮）短语&nbsp;<br/><br/>UNSTRING&nbsp;A&nbsp;DELIMITER&nbsp;BY&nbsp;“,”&nbsp;o&#114;&nbsp;“;”&nbsp;o&#114;&nbsp;ALL&nbsp;“/”&nbsp;<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;INTO&nbsp;B&nbsp;DELIMITER&nbsp;IN&nbsp;DELIM-B&nbsp;<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;C&nbsp;DELIMITER&nbsp;IN&nbsp;DELIM-C.&nbsp;<br/><br/>当没有匹配发生时，该接收项对应的定界符存贮区被清成空格&nbsp;<br/>&nbsp;<br/>POINTER短语&nbsp;<br/><br/>用来指示发送项的字符位置&nbsp;<br/><br/>此短语通常　在单接收项的情况下与DELIMITER短语联合使用。&nbsp;<br/><br/>77&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;DELIM&nbsp;&nbsp;PIC&nbsp;X.&nbsp;<br/><br/>77&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;PNTR&nbsp;&nbsp;PIC&nbsp;99.&nbsp;<br/><br/>77&nbsp;ACCEPT-AREA&nbsp;&nbsp;PIC&nbsp;X(80).&nbsp;<br/><br/>01&nbsp;DATA-RECORD&nbsp;<br/><br/>03&nbsp;DATA-ITEM&nbsp;&nbsp;PIC&nbsp;9(6)&nbsp;<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;OCCURES&nbsp;10&nbsp;TIMES&nbsp;<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;INDEXED&nbsp;BY&nbsp;INDEX.&nbsp;<br/><br/>PROCEDURE&nbsp;DIVISION.&nbsp;<br/><br/>DISPLAY&nbsp;“PLEASE&nbsp;ENTER&nbsp;YOUR&nbsp;DATA.”&nbsp;<br/><br/>ACCEPT&nbsp;ACCEPT-AREA.&nbsp;<br/><br/>MOVE&nbsp;1&nbsp;TO&nbsp;PNTR.&nbsp;<br/><br/>MOVE&nbsp;LOW-VALUE&nbsp;TO&nbsp;DELIM.&nbsp;<br/><br/>PERFORM&nbsp;UNSTR-PROCESS&nbsp;<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;VARYING&nbsp;&nbsp;INDEX&nbsp;FROM&nbsp;1&nbsp;BY&nbsp;1&nbsp;<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;UNTIL&nbsp;DELIM=”*”&nbsp;<br/><br/>UNSTR-PROCESS.&nbsp;<br/><br/>&nbsp;&nbsp;&nbsp;UNSTRING&nbsp;ACCEPT-AREA&nbsp;DELIMITED&nbsp;BY&nbsp;ALL&nbsp;SPACES&nbsp;o&#114;&nbsp;“*”&nbsp;<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;INTO&nbsp;DATA-ITEM(INDEX)&nbsp;<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;DELIMITER&nbsp;IN&nbsp;DELIM&nbsp;<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;WITH&nbsp;PROINTER&nbsp;PNTR.&nbsp;<br/>&nbsp;<br/>TALLYING&nbsp;短语&nbsp;<br/><br/>计算实际接收到了多少数据&nbsp;<br/><br/>MOVE&nbsp;ZERO&nbsp;TO&nbsp;TLY.&nbsp;<br/><br/>UNSTRIGN&nbsp;A&nbsp;DELIMITED&nbsp;BY&nbsp;ALL&nbsp;SPACE&nbsp;o&#114;&nbsp;“*”&nbsp;<br/><br/>&nbsp;&nbsp;&nbsp;INTO&nbsp;B&nbsp;C&nbsp;D&nbsp;E&nbsp;F&nbsp;<br/><br/>&nbsp;&nbsp;&nbsp;TRLLYING&nbsp;IN&nbsp;TLY.&nbsp;<br/><br/>假如A只发送了三个字符串，则TLY＝3&nbsp;<br/><br/>本短语应在POINTER语句之后，而这2个短语又必须在DELIMITER和COUNT之后&nbsp;<br/>&nbsp;<br/>OVERFLOW短语&nbsp;<br/><br/>溢出情况&nbsp;<br/><br/>1．&nbsp;&nbsp;指针数值项值不合理，小于1或大于发送项长度。若不合理，不执行UNSTRING语句，控制转向溢出短语规定的命令语句&nbsp;<br/><br/>2．&nbsp;&nbsp;当所有接收项已装满，但发送项尚有未和定界符茶杯的数据，或者尚有未被包含在发送字符串中的数据。此时先执行UNSTRING语句，而后控制转向溢出短语规定的命令语句&nbsp;<br/>&nbsp;<br/>三．INSPECT语句&nbsp;<br/><br/>&nbsp;&nbsp;<br/><br/>1＞&nbsp;&nbsp;INSPECT/TALLYING语句　&nbsp;<br/><br/>INSPECT&nbsp;A&nbsp;TALLYING&nbsp;TLY&nbsp;FOR&nbsp;ALL&nbsp;“A”&nbsp;<br/><br/>对指定字符串的所有出现进行计数，即数据项中每出现一个指定的字符串，计数器就加1&nbsp;<br/><br/>INSPECT&nbsp;A&nbsp;TALLYING&nbsp;TLY&nbsp;FOR&nbsp;LEADING&nbsp;“*”&nbsp;<br/><br/>对指定字符串作为前缀进行计数，计算数据项中从第一个字符开始连续出现多少指定的字符串。&nbsp;<br/><br/>INSPECT&nbsp;A&nbsp;TALLYING&nbsp;FLY&nbsp;FOR&nbsp;CHARACTERS&nbsp;<br/><br/>对所有出现的字符进行计数&nbsp;<br/><br/>INSPECT&nbsp;A&nbsp;TALLYING&nbsp;T1&nbsp;FOR&nbsp;“.”&nbsp;AFTER&nbsp;“A”&nbsp;<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;T2&nbsp;FOR&nbsp;“;”&nbsp;BEFORE&nbsp;“B”&nbsp;<br/>&nbsp;<br/>2＞INSPECT/REPLACING语句&nbsp;<br/><br/>INSPECT&nbsp;&nbsp;A&nbsp;REPLACING&nbsp;CHARACTERS&nbsp;BY&nbsp;SPACE&nbsp;BEFORE&nbsp;“*”.&nbsp;<br/><br/>用空格替代＊前的全部字符&nbsp;<br/><br/>INSPECT&nbsp;A&nbsp;REPLACING&nbsp;ALL&nbsp;“AB”&nbsp;BY&nbsp;“XY”&nbsp;<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ALL&nbsp;“CD”&nbsp;BY&nbsp;&nbsp;“AB”&nbsp;<br/><br/>用XY替代AB，AB替代CD&nbsp;<br/><br/>INSPECT&nbsp;A&nbsp;REPLACING&nbsp;LEADING&nbsp;SPACE&nbsp;BY&nbsp;ZERO&nbsp;BEFORE&nbsp;“**”&nbsp;<br/><br/>用0替代＊＊之前的前缀为空格的前缀&nbsp;<br/><br/>如：A为_&nbsp;_&nbsp;2_&nbsp;3**,替代后A为002_3**&nbsp;<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;A为1_2_3_**,替代后A不变&nbsp;<br/><br/>INSPECT&nbsp;A&nbsp;REPLACING&nbsp;FIRST&nbsp;“+”&nbsp;BY&nbsp;“-“&nbsp;AFTER&nbsp;SPACE&nbsp;<br/><br/>用-替代空格后第一次出现＋的&nbsp;<br/>&nbsp;<br/>3＞INSPECT/TALLYING/REPLACING语句&nbsp;<br/><br/>MOVE&nbsp;ZERO&nbsp;TO&nbsp;TLY.&nbsp;<br/><br/>INSPECT&nbsp;A&nbsp;TALLYING&nbsp;TLY&nbsp;FOR&nbsp;ALL&nbsp;“L”&nbsp;<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;REPLACING&nbsp;LEADING&nbsp;“A”&nbsp;BY&nbsp;“E”&nbsp;AFTER&nbsp;“L”.<br/>&nbsp;<br/>]]></description>
		</item>
		
			<item>
			<link>http://www.isingapore.org/default.asp?id=149</link>
			<title><![CDATA[软件外包项目(对日)常见问题探讨]]></title>
			<author>L#isingapore.org(习惯有你)</author>
			<category><![CDATA[关于大机]]></category>
			<pubDate>Tue,15 May 2007 15:15:43 +0800</pubDate>
			<guid>http://www.isingapore.org/default.asp?id=149</guid>	
		<description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;软件外包已经成为全球IT行业的大趋势，当前软件发包方主要来自欧美和日本。我国对日软件外包具备很多竞争优势，中国各地如北京、上海、大连、西安、杭州、合肥等城市的对日软件外包正在迅速发展，并逐渐形成产业规模，中小规模的软件企业纷纷建立对日软件出口联盟。&nbsp;<br/>　　对日软件外包相对技术难度不高，但是质量要求相当苛刻，外包项目失败的例子不少。以下就对日软件外包常见的一些问题进行简单探讨，希望与同行的朋友更多交流，总结经验，共同成功。&nbsp;<br/><br/>　　1、日方SE认为理所当然的地方，很多细节不会在式样书中明确写出，或者说日方SE完全按照在日本国做项目设计的习惯写式样书；由于中日文化和思维习惯的差异，可能导致中国软件开发人员对这些习惯问题理解有误。&nbsp;<br/><br/>　　对策：&nbsp;<br/><br/>　　1)积累经验，参照同类系统；<br/>　　2)提QA表确认。&nbsp;<br/><br/>　　2、在纳品期间，对于某些BUG，可能会出现这样的争执：中方开发人员说是由于日方的式样书没有写明确，式样书不够细致，日方设计人员说是中方理解式样书不对，有些地方不写出来也应该能自己理解。&nbsp;<br/><br/>　　对策：&nbsp;<br/><br/>　　1)首先确保纳品质量和纳期；<br/>　　2)加强双方的交流；<br/>　　3)加强测试。&nbsp;<br/><br/>　　3、有的项目是日方边设计，需要中方同步开发，中方开发人员认为式样书上写多少就做多少，没有写的就不做。&nbsp;<br/><br/>　　对策：&nbsp;<br/><br/>　　1)加强项目的交流，主动提出设计思考让日方人员确认是不是这样的意思？&nbsp;<br/><br/>　　4、中方开发人员的日语熟练程度不够&nbsp;<br/><br/>　　对策：&nbsp;<br/><br/>&nbsp;&nbsp;　1)加强IT日语教育，开发人员至少达到能理解日语式样书的水平；<br/>　　2)配置专业的日语翻译辅助。&nbsp;<br/><br/>　　5、对于一些中方开发人员不太在意的一些细节问题，例如字体、颜色、对齐方式等等，要求不够严谨。&nbsp;<br/><br/>　　对策：&nbsp;<br/><br/>　　1)强化质量意识，建立开发和测试规范。&nbsp;<br/><br/>6、开发过程的规范性与开发人员的态度：日本企业的开发管理，讲究中规中矩，非常重视文档的规范化管理，力求做到&#34;凡事必求有据&#34;；而中国企业在文档的规范化管理方面相对淡薄；日本企业项目管理对涉及的过程和文档规定了极其严格的次序和样式，要求开发人员严格执行。而中国企业在具体执行方面，开发人员往往对这些规范和要求的遵照不够严谨。&nbsp;<br/><br/>　　对策：&nbsp;<br/><br/>　　1)完全按照客户要求进行纳品，包括文档，如：开发进度报告、测试用例(Test&nbsp;Case)、测试报告等等；<br/>　　2)加强开发过程管理，规范开发过程，引入CMM模式；<br/>　　3)加强软件质量保证，如代码评审、文档审核、测试。&nbsp;<br/><br/>　　7、中国企业的开发人员比较喜欢技术创新，在开发过程中对于一些技术问题提出自己的技术方案，可能会导致部分模块技术实现方式与整体要求有差异&nbsp;<br/><br/>　　对策：&nbsp;<br/><br/>　　1)完全尊重日本客户的文化和管理模式，积极提出技术建议；<br/>　　2)对于有要求遵照Sample代码或对具体技术实现细节有严格要求的，开发人员必须严格遵循，不允许采用自己的技术实现；<br/>　　3)加强代码审查(Code&nbsp;Review)。&nbsp;<br/><br/>　　9、一些需要日本企业与中国企业的SE共同参与设计或交流的项目&nbsp;<br/><br/>　　对策：&nbsp;<br/><br/>　　1)在日本的合作伙伴企业派遣SE到项目现场进行设计；<br/>　　2)派遣中国SE到日本参与设计，设计完成后带回中国开发；<br/>　　3)日本企业短期派遣SE到中国。&nbsp;<br/><br/>　　10、软件外包知识产权保护与客户保密问题&nbsp;<br/><br/>　　对策：&nbsp;<br/><br/>　　1)严格保护日本客户商业秘密和知识产权；<br/>　　2)中国企业与日本企业签订保密协议；<br/>　　3)中国企业与开发人员签订保密协议。&nbsp;<br/><br/>　　11、日本企业对中国企业开发进度的掌握&nbsp;<br/><br/>　　对策：&nbsp;<br/><br/>　　1)按照日本企业项目管理要求报告项目进度；<br/>　　2)分阶段纳品交付；&nbsp;<br/><br/>　　12、远程协同合作开发的交流手段和方式&nbsp;<br/><br/>　　对策：&nbsp;<br/><br/>　　1)实时消息/语音/视频交流，例如：MSN&nbsp;Messenger、Yahoo&nbsp;Messenger<br/>　　2)视频会议系统<br/>　　3)远程控制、远程协助、远程调试<br/>　　4)Email、FTP<br/>　　5)相互人才派遣，人才交流&nbsp;<br/><br/>　　13、中国企业开发队伍的稳定性&nbsp;<br/><br/>　　对策：&nbsp;<br/><br/>　　1)稳定项目流量，为特定客户配置固定的开发队伍<br/>]]></description>
		</item>
		
			<item>
			<link>http://www.isingapore.org/default.asp?id=148</link>
			<title><![CDATA[COBOL语法和文法(2)]]></title>
			<author>L#isingapore.org(习惯有你)</author>
			<category><![CDATA[关于大机]]></category>
			<pubDate>Tue,15 May 2007 15:09:07 +0800</pubDate>
			<guid>http://www.isingapore.org/default.asp?id=148</guid>	
		<description><![CDATA[ACCEPT<br/>&nbsp;&nbsp;&nbsp;&nbsp;从键盘或其他输入设备读取数据。<br/>&nbsp;&nbsp;&nbsp;&nbsp;ACCEPT&nbsp;A&nbsp;FROM&nbsp;DEV.&nbsp;&nbsp;&nbsp;&nbsp;从DEV读取数据到A，也可以省略FROM&nbsp;DEV，表示从键盘读取。<br/>&nbsp;&nbsp;&nbsp;&nbsp;ACCEPT&nbsp;A&nbsp;FROM&nbsp;DATE/DAY/DAY-OF-WEEK/TIME.读取日期，表示为6个字符，如990909（1999年9月9日）。<br/>&nbsp;&nbsp;&nbsp;&nbsp;读取当前日期在年度（前2位）中为第几天（后3位），表示为6个字符，如1994年4月1日表示为94091。<br/>&nbsp;&nbsp;&nbsp;&nbsp;读取当前星期几，表示为1位字符。1表示星期一，7表示星期日。<br/>&nbsp;&nbsp;&nbsp;&nbsp;读取当前时间，表示为8位字符。精确到毫秒。如下午2：41表示为14410000。&nbsp;<br/><br/>DISPLAY<br/>&nbsp;&nbsp;&nbsp;&nbsp;将数据写入输出设备。如监视器（monite），系统输出流和操作员控制台（console）。<br/>&nbsp;&nbsp;&nbsp;&nbsp;DISPLAY&nbsp;AAAAA&nbsp;BBBBB&nbsp;[UPON&nbsp;DEV]&nbsp;[WITH&nbsp;NO&nbsp;ADVANCING]<br/>&nbsp;&nbsp;&nbsp;&nbsp;如果使用UPON选项，dev要与special-names段中的硬件名相关联。<br/>&nbsp;&nbsp;&nbsp;&nbsp;如果使用no&nbsp;advancing选项，则输出最后一个字符后输出设备仍然保持原位，使下一条display语句还在该位置显示。否则可能到下一行显示。&nbsp;<br/><br/>INITIALIZE<br/>&nbsp;&nbsp;&nbsp;&nbsp;初始化数据，数字和数字编辑数据项初始化为0，其他初始化为空格。&nbsp;<br/><br/>INSPECT&nbsp;TALLYING<br/>&nbsp;&nbsp;&nbsp;&nbsp;计算项目中该字符串出现的次数。<br/>&nbsp;&nbsp;&nbsp;&nbsp;INSPECT&nbsp;AA&nbsp;TALLYING&nbsp;BB&nbsp;FOR&nbsp;ALL&nbsp;“EE”.&nbsp;&nbsp;从AA中查找有多少个EE，将个数写入BB。<br/>&nbsp;&nbsp;&nbsp;&nbsp;INSPECT&nbsp;AA&nbsp;TALLYING&nbsp;BB&nbsp;FOR&nbsp;CHARACTERS&nbsp;BEFORE&nbsp;“E”.&nbsp;&nbsp;从AA中查找E前面有多少个字符，将个数写入BB。<br/>&nbsp;&nbsp;&nbsp;&nbsp;INSPECT&nbsp;AA&nbsp;TALLYING&nbsp;BB&nbsp;FOR&nbsp;CHARACTERS&nbsp;AFTER&nbsp;“C”&nbsp;BEFORE&nbsp;“E”.&nbsp;&nbsp;从AA中查找C后面E前面有多少个字符，将个数写入BB。<br/>&nbsp;&nbsp;&nbsp;&nbsp;INSPECT&nbsp;AA&nbsp;TALLYING&nbsp;BB&nbsp;FOR&nbsp;LEADING&nbsp;“E”.&nbsp;&nbsp;从AA中第一个字符开始查找有多少个E，如果没有就结束操作，有就将个数写入BB，直至没有。<br/>&nbsp;&nbsp;&nbsp;&nbsp;INSPECT&nbsp;AA&nbsp;TALLYING&nbsp;BB&nbsp;FOR&nbsp;LEADING&nbsp;“E”&nbsp;AFTER&nbsp;“C”.&nbsp;&nbsp;从AA中C后面开始查找有多少个E，如果没有就结束操作，有就将个数写入BB，直至没有。<br/>组合例子：<br/>&nbsp;&nbsp;&nbsp;&nbsp;77&nbsp;CS&nbsp;PIC&nbsp;X(9)&nbsp;VALUE&nbsp;&#34;REELWHEEL&#34;.<br/>&nbsp;&nbsp;&nbsp;&nbsp;77&nbsp;COUNT-0.<br/>&nbsp;&nbsp;&nbsp;&nbsp;77&nbsp;COUNT-1.<br/>&nbsp;&nbsp;&nbsp;&nbsp;77&nbsp;COUNT-2.<br/>&nbsp;&nbsp;&nbsp;&nbsp;MOVE&nbsp;0&nbsp;TO&nbsp;COUNT-0,COUNT-1,COUNT-2.<br/>&nbsp;&nbsp;&nbsp;&nbsp;INSPECT&nbsp;CS&nbsp;TALLYING<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;COUNT-0&nbsp;FOR&nbsp;ALL&nbsp;&#34;E&#34;,<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;COUNT-1&nbsp;FOR&nbsp;LEADING&nbsp;&#34;W&#34;&nbsp;AFTER&nbsp;&#34;L&#34;,<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;COUNT-2&nbsp;FOR&nbsp;CHARACTERS.<br/>&nbsp;&nbsp;&nbsp;&nbsp;程序首先判断的是字符&#34;R&#34;,执行COUNT-0&nbsp;FOR&nbsp;ALL&nbsp;&#34;E&#34;，因为第一个字符不是&#34;E&#34;，所以程序转而执行COUNT-1&nbsp;FOR&nbsp;LEADING&nbsp;&#34;W&#34;&nbsp;AFTER&nbsp;&#34;L&#34;，也不符合要求，<br/>&nbsp;&nbsp;&nbsp;&nbsp;于是程序执行COUNT-2&nbsp;FOR&nbsp;CHARACTERS，COUNT-2&nbsp;=1。然后字符串往下一位，判断&#34;E&#34;,执行COUNT-0&nbsp;FOR&nbsp;ALL&nbsp;&#34;E&#34;，符合要求，则COUNT-0=1。<br/>&nbsp;&nbsp;&nbsp;&nbsp;有了满足条件的判断，则余下的判断不再执行，字符串再往下一位，判断&#34;E&#34;，则COUNT-0=2。接着判断&#34;L&#34;,则COUNT-2&nbsp;=2。以此类推，最后结果为COUNT-0=4，<br/>&nbsp;&nbsp;&nbsp;&nbsp;COUNT-1=1，COUNT-2=4。<br/>INSPECT&nbsp;REPLACING<br/>&nbsp;&nbsp;&nbsp;&nbsp;用另一个字符串替换这个字符串。<br/>&nbsp;&nbsp;&nbsp;&nbsp;还用上面的例子。<br/>&nbsp;&nbsp;&nbsp;&nbsp;INSPECT&nbsp;CS&nbsp;REPLACING&nbsp;ALL&nbsp;&#34;E&#34;&nbsp;BY&nbsp;&#34;Y&#34;.&nbsp;&nbsp;结果&#34;RYYLWHYYL&#34;<br/>&nbsp;&nbsp;&nbsp;&nbsp;INSPECT&nbsp;CS&nbsp;REPLACING&nbsp;CHARACTERS&nbsp;BY&nbsp;&#34;Z&#34;&nbsp;AFTER&nbsp;&nbsp;&#34;L&#34;.&nbsp;&nbsp;结果&#34;REELZZZZZ&#34;<br/>&nbsp;&nbsp;&nbsp;&nbsp;INSPECT&nbsp;CS&nbsp;REPLACING&nbsp;LEADING&nbsp;&#34;E&#34;&nbsp;BY&nbsp;&#34;Y&#34;.&nbsp;&nbsp;结果不变<br/>&nbsp;&nbsp;&nbsp;&nbsp;INSPECT&nbsp;CS&nbsp;REPLACING&nbsp;LEADING&nbsp;&#34;E&#34;&nbsp;BY&nbsp;&#34;Z&#34;&nbsp;AFTER&nbsp;&nbsp;&#34;H&#34;.&nbsp;&nbsp;结果&#34;REELWHZZL&#34;<br/>&nbsp;&nbsp;&nbsp;&nbsp;INSPECT&nbsp;CS&nbsp;REPLACING&nbsp;FIRST&nbsp;&#34;E&#34;&nbsp;BY&nbsp;&#34;I&#34;.&nbsp;&nbsp;结果&#34;RIELWHEEL&#34;<br/>&nbsp;&nbsp;&nbsp;&nbsp;INSPECT&nbsp;CS&nbsp;REPLACING&nbsp;FIRST&nbsp;&#34;EE&#34;&nbsp;BY&nbsp;&#34;00&#34;,ALL&nbsp;&#34;WH&#34;&nbsp;BY&nbsp;&#34;TH&#34;,CHARACTERS&nbsp;BY&nbsp;SPACE.&nbsp;&nbsp;结果&#34;&nbsp;00&nbsp;TH&nbsp;&nbsp;&nbsp;&#34;<br/>INSPECT&nbsp;CONVERTING<br/>&nbsp;&nbsp;&nbsp;&nbsp;就是INSPECT&nbsp;REPLACING的缩写。<br/>&nbsp;&nbsp;&nbsp;&nbsp;INSPECT&nbsp;CS&nbsp;CONVERTING&nbsp;&#34;EE&#34;&nbsp;TO&nbsp;&#34;00&#34;.&nbsp;也可以加上BEFORE，AFTER。&nbsp;<br/><br/>STRING<br/>&nbsp;&nbsp;&nbsp;&nbsp;将几个字符串合并成一个字符串。<br/>&nbsp;&nbsp;&nbsp;&nbsp;STRING&nbsp;A&nbsp;DELIMITED&nbsp;BY&nbsp;SPACE，&#34;&nbsp;！&#34;&nbsp;DELIMITED&nbsp;BY&nbsp;SIZE&nbsp;INTO&nbsp;C.假设A中的内容是&#34;HELLO&#34;,则结果是&#34;HELLO&nbsp;!&#34;.<br/>&nbsp;&nbsp;&nbsp;&nbsp;DELIMITED&nbsp;BY&nbsp;SPACE意思是碰到空格，或到A的结尾或C的结尾，则合并A字符串结束。<br/>&nbsp;&nbsp;&nbsp;&nbsp;DELIMITED&nbsp;BY&nbsp;SIZE意思是到&#34;&nbsp;！&#34;的结尾或C的结尾，则合并&#34;&nbsp;！&#34;字符串结束。<br/>&nbsp;&nbsp;&nbsp;&nbsp;STRING&nbsp;A&nbsp;INTO&nbsp;B&nbsp;POINTER&nbsp;C&nbsp;ON&nbsp;OVERFLOW&nbsp;PROC1&nbsp;NOT&nbsp;ON&nbsp;OVERFLOW&nbsp;&nbsp;PROC2.<br/>&nbsp;&nbsp;&nbsp;&nbsp;将A字符串复制到B中由C开始的地址处。如果C小于1或大于B的长度，或A的长度大于B中C到结尾处的长度，则发生<br/>&nbsp;&nbsp;&nbsp;&nbsp;OVERFLOW溢出，执行PROC1。&nbsp;<br/><br/>UNSTRING<br/>&nbsp;&nbsp;&nbsp;&nbsp;将一个字符串中的字符按照要求放入多个变量中。<br/>&nbsp;&nbsp;&nbsp;&nbsp;UNSTRING&nbsp;AAA&nbsp;[DELIMITED&nbsp;BY&nbsp;[ALL]&nbsp;B&nbsp;[OR&nbsp;[ALL]&nbsp;C]&nbsp;...]&nbsp;INTO&nbsp;{&nbsp;C&nbsp;[DELIMITER&nbsp;IN&nbsp;D]&nbsp;[COUNT&nbsp;IN&nbsp;E]&nbsp;}&nbsp;...[WITH&nbsp;POINTER&nbsp;F]&nbsp;[TALLYING&nbsp;IN&nbsp;G]&nbsp;[ON&nbsp;OVERFLOW&nbsp;PROC1]&nbsp;[NOT&nbsp;ON&nbsp;OVERFLOW&nbsp;PROC2]&nbsp;[END-UNSTRING]&nbsp;&nbsp;<br/>&nbsp;&nbsp;&nbsp;&nbsp;将AAA中的字符放入C，如果还有其他变量，如C2，则等C放满后放入C2。<br/>&nbsp;&nbsp;&nbsp;&nbsp;DELIMITED&nbsp;BY和STRING中的作用一样。表示将AAA中到B为止的字符取出。如果有OR，则表示到B或C字符为止的字符取出。如果有ALL，则如果几个相同的B在一起，则认为是一个B。<br/>&nbsp;&nbsp;&nbsp;&nbsp;DELIMITER&nbsp;IN&nbsp;将B放入D，知道是哪个字符为分隔符。<br/>&nbsp;&nbsp;&nbsp;&nbsp;COUNT&nbsp;IN&nbsp;实际复制到C中的字符数放入E中。<br/>&nbsp;&nbsp;&nbsp;&nbsp;WITH&nbsp;POINTER&nbsp;和STRIGN中一样。<br/>&nbsp;&nbsp;&nbsp;&nbsp;TALLYING&nbsp;IN&nbsp;计算有几个接受项。访问一个新的接受项，G值加1。<br/>例子：<br/>&nbsp;&nbsp;&nbsp;&nbsp;03&nbsp;CITY&nbsp;PIC&nbsp;X(10).<br/>&nbsp;&nbsp;&nbsp;&nbsp;O3&nbsp;ZIP&nbsp;&nbsp;PIC&nbsp;X(10).<br/>&nbsp;&nbsp;&nbsp;&nbsp;77&nbsp;TEST&nbsp;PIC&nbsp;X(20).<br/>&nbsp;&nbsp;&nbsp;&nbsp;MOVE&nbsp;&#34;NEW&nbsp;YORK,NY&nbsp;10017&#34;&nbsp;TO&nbsp;TEST.<br/>&nbsp;&nbsp;&nbsp;&nbsp;UNSTRING&nbsp;TEST&nbsp;DELIMITED&nbsp;BY&nbsp;&#34;,&#34;&nbsp;INTO&nbsp;CITY,ZIP.<br/>&nbsp;&nbsp;&nbsp;&nbsp;执行结果CITY值是NEW&nbsp;YORK.ZIP的值是NY&nbsp;10017。&nbsp;<br/><br/>逻辑和控制语句<br/>&nbsp;&nbsp;&nbsp;&nbsp;IF&nbsp;(A&nbsp;[NOT]&nbsp;&gt;&nbsp;B)&nbsp;等价于&nbsp;IF&nbsp;(A&nbsp;[NOT]&nbsp;GREATER&nbsp;THAN&nbsp;B)<br/>&nbsp;&nbsp;&nbsp;&nbsp;IF&nbsp;(A&nbsp;[NOT]&nbsp;&lt;&nbsp;B)&nbsp;等价于&nbsp;IF&nbsp;(A&nbsp;[NOT]&nbsp;LESS&nbsp;THAN&nbsp;B)<br/>&nbsp;&nbsp;&nbsp;&nbsp;IF&nbsp;(A&nbsp;[NOT]&nbsp;=&nbsp;B)&nbsp;等价于&nbsp;IF&nbsp;(A&nbsp;[NOT]&nbsp;EQUAL&nbsp;TO&nbsp;B)<br/>&nbsp;&nbsp;&nbsp;&nbsp;IF&nbsp;(A&nbsp;&gt;=&nbsp;B)&nbsp;等价于&nbsp;IF&nbsp;(A&nbsp;GREATER&nbsp;THAN&nbsp;o&#114;&nbsp;EQUAL&nbsp;TO&nbsp;B)<br/>&nbsp;&nbsp;&nbsp;&nbsp;IF&nbsp;(A&nbsp;&lt;=&nbsp;B)&nbsp;等价于&nbsp;IF&nbsp;(A&nbsp;LESS&nbsp;THAN&nbsp;o&#114;&nbsp;EQUAL&nbsp;TO&nbsp;B)&nbsp;<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;IF&nbsp;A&nbsp;IS&nbsp;[NOT]&nbsp;NUMERIC&nbsp;&nbsp;&nbsp;&nbsp;数字和可选符号<br/>&nbsp;&nbsp;&nbsp;&nbsp;IF&nbsp;A&nbsp;IS&nbsp;[NOT]&nbsp;ALPHABETIC&nbsp;A~Z,a~z字符和空格<br/>&nbsp;&nbsp;&nbsp;&nbsp;IF&nbsp;A&nbsp;IS&nbsp;[NOT]&nbsp;ALPHABETIC-LOWER&nbsp;a~z字符和空格<br/>&nbsp;&nbsp;&nbsp;&nbsp;IF&nbsp;A&nbsp;IS&nbsp;[NOT]&nbsp;ALPHABETIC-UPPER&nbsp;A~Z字符和空格<br/>&nbsp;&nbsp;&nbsp;&nbsp;IF&nbsp;A&nbsp;IS&nbsp;[NOT]&nbsp;CLASS-NAME&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SPECIAL-NAMES定义的字符集<br/>&nbsp;&nbsp;&nbsp;&nbsp;例如：SPECIAL-NAMES.<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;CLASS&nbsp;MYDEFINE&nbsp;IS&nbsp;&#34;12345+ABCDE-&#34;.&nbsp;<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;判断变量是否定义了数值。这个变量是88层的，且要与一个数据项关联。<br/>&nbsp;&nbsp;&nbsp;&nbsp;03&nbsp;STATE&nbsp;PIC&nbsp;XX.<br/>&nbsp;&nbsp;&nbsp;&nbsp;88&nbsp;CON&nbsp;VALUES&nbsp;ARE&nbsp;&#34;A&#34;,&#34;B&#34;,&#34;C&#34;.<br/>&nbsp;&nbsp;&nbsp;&nbsp;IF&nbsp;CON&nbsp;...&nbsp;<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;判断厂家定义运行开关的开/关状态。<br/>&nbsp;&nbsp;&nbsp;&nbsp;SPECIAL-NAMES.<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SWITCH-A&nbsp;ON&nbsp;STATUS&nbsp;IS&nbsp;A-ON&nbsp;,OFF&nbsp;STATUS&nbsp;IS&nbsp;A-OFF.<br/>&nbsp;&nbsp;&nbsp;&nbsp;IF&nbsp;A-ON...<br/>&nbsp;&nbsp;&nbsp;&nbsp;若开关在开位置，则IF&nbsp;A-ON返回TRUE。&nbsp;<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;IF&nbsp;A&nbsp;IS&nbsp;[NOT]&nbsp;POSITIVE&nbsp;&nbsp;判断是否大于0<br/>&nbsp;&nbsp;&nbsp;&nbsp;IF&nbsp;A&nbsp;IS&nbsp;[NOT]&nbsp;NEGATIVE&nbsp;&nbsp;判断是否小于0<br/>&nbsp;&nbsp;&nbsp;&nbsp;IF&nbsp;A&nbsp;IS&nbsp;[NOT]&nbsp;ZERO&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;判断是否等于0&nbsp;<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;COBOL支持NOT&nbsp;,AND&nbsp;,OR&nbsp;操作。&nbsp;<br/><br/>PERFORM<br/>&nbsp;&nbsp;&nbsp;&nbsp;过程调用，但是不传递参数。<br/>&nbsp;&nbsp;PERFORM&nbsp;PROC1&nbsp;[THROUGH&nbsp;PROC2]&nbsp;&nbsp;<br/>&nbsp;&nbsp;&nbsp;&nbsp;执行完PROC1再执行PROC2.没有THROUGH(THRU)就只执行PROC1.<br/>&nbsp;&nbsp;PERFORM&nbsp;PROC1&nbsp;[THRU&nbsp;PROC2]&nbsp;N&nbsp;TIMES<br/>&nbsp;&nbsp;&nbsp;&nbsp;执行PROC1[或者还有PROC2]N次。<br/>&nbsp;&nbsp;PERFORM&nbsp;PROC1&nbsp;[THRU&nbsp;PROC2]&nbsp;[WITH&nbsp;TEST&nbsp;BEFORE/AFTER]&nbsp;UNTIL&nbsp;A&nbsp;NOT&nbsp;EUQAL&nbsp;0.<br/>&nbsp;&nbsp;&nbsp;&nbsp;执行PROC1[或者还有PROC2]直到A不等于0。WITH&nbsp;TEST&nbsp;BEFORE/AFTER指定在第一次执行之前还是之后判断条件。默认是BEFORE，执行之前判断。<br/>&nbsp;&nbsp;PERFORM&nbsp;PROC1&nbsp;[THRU&nbsp;PROC2]&nbsp;[WITH&nbsp;TEST&nbsp;BEFORE/AFTER]&nbsp;VARYING&nbsp;A&nbsp;FROM&nbsp;B&nbsp;BY&nbsp;C&nbsp;UNTIL&nbsp;CONDITION1&nbsp;[AFTER&nbsp;D&nbsp;FROM&nbsp;E&nbsp;BY&nbsp;F&nbsp;UNTIL&nbsp;CONDITION2].<br/>&nbsp;&nbsp;&nbsp;&nbsp;相当于FOR循环，将A的值从B开始，以C为单位递增，直到满足CONDITION1。AFTER语句是一个嵌套的FOR&nbsp;循环。VARYING是外循环，AFTER是内循环。A，B可以是索引。&nbsp;<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;过程也可以直接写入PERFORM中。但是THROUGH就不好用了。语法如下&nbsp;：<br/>&nbsp;&nbsp;PERFORM&nbsp;过程语句&nbsp;END-PERFORM.<br/>&nbsp;&nbsp;PERFORM&nbsp;N&nbsp;TIMES&nbsp;过程语句&nbsp;END-PERFORM.<br/>&nbsp;&nbsp;PERFORM&nbsp;[WITH&nbsp;TEST&nbsp;BEFORE/AFTER]&nbsp;UNTIL&nbsp;CONDITION&nbsp;过程语句&nbsp;END-PERFORM.<br/>&nbsp;&nbsp;PERFORM&nbsp;[WITH&nbsp;TEST&nbsp;BEFORE/AFTER]&nbsp;VARYING&nbsp;A&nbsp;FROM&nbsp;B&nbsp;BY&nbsp;C&nbsp;UNTIL&nbsp;CONDITION1&nbsp;过程语句&nbsp;END-PERFORM.&nbsp;<br/><br/>IF语句<br/>&nbsp;&nbsp;IF&nbsp;CONDITION&nbsp;THEN&nbsp;STATEMENTS1/NEXT&nbsp;SENTENCE&nbsp;ELSE&nbsp;STATEMENTS2&nbsp;END-IF/NEXT&nbsp;SENTENCE/ENDIF<br/>&nbsp;&nbsp;&nbsp;&nbsp;NEXT&nbsp;SENTENCE将跳出IF操作语句执行下一条语句。<br/>&nbsp;&nbsp;&nbsp;&nbsp;IF语句中不要使用.句号。.句号将结束所有IF语句。要结束一个嵌套的IF语句，可以使用END-IF或者NEXT&nbsp;SENTENCE.如<br/>&nbsp;&nbsp;&nbsp;&nbsp;IF&nbsp;A&nbsp;IF&nbsp;B&nbsp;END-IF&nbsp;ELSE&nbsp;C&nbsp;END-IF.或者<br/>&nbsp;&nbsp;&nbsp;&nbsp;IF&nbsp;A&nbsp;IF&nbsp;B&nbsp;ELSE&nbsp;NEXT&nbsp;SENTENCE&nbsp;ELSE&nbsp;C&nbsp;END-IF.&nbsp;<br/><br/>EVALUATE<br/>&nbsp;&nbsp;&nbsp;&nbsp;相当于SWITCH&nbsp;CASE语句。<br/>&nbsp;&nbsp;&nbsp;&nbsp;EVALUATE&nbsp;A<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;WHEN&nbsp;B&nbsp;...<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;WHEN&nbsp;0&nbsp;THRU&nbsp;100&nbsp;...(FROM&nbsp;0&nbsp;TO&nbsp;100)<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;WHEN&nbsp;OTHER&nbsp;...<br/>&nbsp;&nbsp;&nbsp;&nbsp;[END-EVALUATE]<br/>&nbsp;&nbsp;&nbsp;&nbsp;首先得到A的结果，和WHEN语句的参数比较，如果和B相等，就执行B后的操作，执行完了不再执行后面的WHEN语句。如果不等就执行下一条WHEN语句。如果没有相等的就执行WHEN&nbsp;OTHER语句。<br/>&nbsp;&nbsp;&nbsp;&nbsp;EVALUATE&nbsp;A&nbsp;ALSO&nbsp;B<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;WHEN&nbsp;C&nbsp;ALSO&nbsp;D&nbsp;...<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;WHEN&nbsp;E&nbsp;ALSO&nbsp;F&nbsp;...<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;WHEN&nbsp;OTHER&nbsp;...<br/>&nbsp;&nbsp;&nbsp;&nbsp;对于有多个判断条件的，要多个条件同时满足。如上要C=A同时D=B，才执行WHEN语句。&nbsp;<br/><br/>CONTINUE<br/>&nbsp;&nbsp;&nbsp;&nbsp;继续执行下面的程序。&nbsp;<br/><br/>GO&nbsp;TO&nbsp;<br/>&nbsp;&nbsp;&nbsp;&nbsp;GO&nbsp;TO&nbsp;PROC1&nbsp;[DEPENDING&nbsp;ON&nbsp;N]&nbsp;DEPENDING&nbsp;ON&nbsp;N将跳转到清单中的第N个PROC.&nbsp;<br/><br/>EXIT<br/>&nbsp;&nbsp;&nbsp;&nbsp;一般为最后一句话。&nbsp;<br/><br/>STOP<br/>&nbsp;&nbsp;&nbsp;&nbsp;STOP&nbsp;RUN&nbsp;&nbsp;结束程序。&nbsp;<br/><br/>Alt&#101;r&nbsp;<br/>&nbsp;&nbsp;&nbsp;&nbsp;Alt&#101;r&nbsp;PROC1&nbsp;TO&nbsp;PROC2.&nbsp;不懂什么意思，反正已经从标准中废除了这个语句。&nbsp;<br/><br/>ENTER<br/>&nbsp;&nbsp;&nbsp;&nbsp;使其他编程语言中的语句可以放进当前源程序中。<br/>&nbsp;&nbsp;&nbsp;&nbsp;ENTER&nbsp;LANGUAGE-NAME&nbsp;[ROUTINE-NAME]<br/>&nbsp;&nbsp;&nbsp;&nbsp;LANGUAGE&nbsp;是厂家指定可以输入COBOL的任何语言，这个语句后面是其他编程语言的语句，然后要用ENTERCOBOL表示返回COBOL语言。<br/>&nbsp;&nbsp;&nbsp;&nbsp;如果无法将其他语言的程序直接放入，可以用ROUTINE-NAME引用其他语言编写的程序。<br/><br/>]]></description>
		</item>
		
			<item>
			<link>http://www.isingapore.org/default.asp?id=147</link>
			<title><![CDATA[COBOL语法和文法(1)]]></title>
			<author>L#isingapore.org(习惯有你)</author>
			<category><![CDATA[关于大机]]></category>
			<pubDate>Tue,15 May 2007 15:08:17 +0800</pubDate>
			<guid>http://www.isingapore.org/default.asp?id=147</guid>	
		<description><![CDATA[REDEFINES<br/>&nbsp;&nbsp;&nbsp;&nbsp;可以用不同的变量描述同一内存。<br/>&nbsp;&nbsp;&nbsp;&nbsp;01&nbsp;PART_RECODE&nbsp;USAGE&nbsp;DISPLAY<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;03&nbsp;PART-TYPE&nbsp;PICTURE...<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;03&nbsp;PART_TYPE_A.<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;05&nbsp;PART_NUMBER&nbsp;PICTURE...<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;05&nbsp;PART_COST&nbsp;PICTURE...<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;03&nbsp;PART_TYPE_B&nbsp;REDEFINES&nbsp;PART_TYPE_A.<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;05&nbsp;UPC_CODE&nbsp;PICTURE...<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;03&nbsp;PART_TYPE_C&nbsp;REDEFINES&nbsp;PART_TYPE_A.<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;05&nbsp;ISBN&nbsp;PICTURE...<br/>&nbsp;&nbsp;&nbsp;&nbsp;根据PART_TYPE决定用PART_TYPE_A还是PART_TYPE_B还是PART_TYPE_C。<br/>&nbsp;&nbsp;&nbsp;&nbsp;规则：<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;PART_TYPE_B和PART_TYPE_C长度不能大于PART_TYPE_A。<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;数据项不能有VALUE。<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;01层不能用REDEFINES.<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;PART_TYPE_B和PART_TYPE_C中不能有OCCURS.&nbsp;<br/><br/>PICTURE<br/>&nbsp;&nbsp;&nbsp;&nbsp;定义基本项目的具体长度，格式，数据类型。可以简写成PIC.<br/>&nbsp;&nbsp;&nbsp;&nbsp;格式字符串最多30个字符，可以包含下列字符：<br/>&nbsp;&nbsp;&nbsp;&nbsp;A&nbsp;&nbsp;字母A-Z,a-z,空格<br/>&nbsp;&nbsp;&nbsp;&nbsp;B&nbsp;&nbsp;插入空格<br/>&nbsp;&nbsp;&nbsp;&nbsp;P&nbsp;&nbsp;标量字符，代表字段中不显示的小数点位置<br/>&nbsp;&nbsp;&nbsp;&nbsp;S&nbsp;&nbsp;代数符号，实际显示取决于项目的USAGE<br/>&nbsp;&nbsp;&nbsp;&nbsp;V&nbsp;&nbsp;小数点位置<br/>&nbsp;&nbsp;&nbsp;&nbsp;X&nbsp;&nbsp;任何字符<br/>&nbsp;&nbsp;&nbsp;&nbsp;Z&nbsp;&nbsp;抑制前头的0并转换成空字符<br/>&nbsp;&nbsp;&nbsp;&nbsp;0&nbsp;&nbsp;插入0<br/>&nbsp;&nbsp;&nbsp;&nbsp;9&nbsp;&nbsp;数字0~9<br/>&nbsp;&nbsp;&nbsp;&nbsp;/&nbsp;&nbsp;插入/<br/>&nbsp;&nbsp;&nbsp;&nbsp;,&nbsp;&nbsp;插入,(逗号不能作为字符串的最后一位，最后时逗号是分隔符)<br/>&nbsp;&nbsp;&nbsp;&nbsp;。&nbsp;插入。<br/>&nbsp;&nbsp;&nbsp;&nbsp;*&nbsp;&nbsp;抑制前头的0并转换成*<br/>&nbsp;&nbsp;&nbsp;&nbsp;+&nbsp;&nbsp;正值插入+，负值插入-<br/>&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;&nbsp;正值插入空格，负值插入-<br/>&nbsp;&nbsp;&nbsp;&nbsp;$&nbsp;&nbsp;插入美元号<br/>&nbsp;&nbsp;&nbsp;&nbsp;CR&nbsp;正值插入两个空格，负值插入CR<br/>&nbsp;&nbsp;&nbsp;&nbsp;DB&nbsp;正值插入两个空格，负值插入DB<br/>例子：<br/>&nbsp;&nbsp;&nbsp;&nbsp;03&nbsp;VAR&nbsp;PIC&nbsp;AAAAA.&nbsp;&nbsp;&nbsp;&nbsp;STATE变量长度为5个字符，不能有数字，等价于03&nbsp;STATE&nbsp;PIC&nbsp;A(5)。<br/>&nbsp;&nbsp;&nbsp;输入ASDFG&nbsp;,显示ASDFG<br/>&nbsp;&nbsp;&nbsp;&nbsp;03&nbsp;VAR&nbsp;PIC&nbsp;XXXXX.&nbsp;&nbsp;&nbsp;FILLER变量长度为5个任意字符。等价于03&nbsp;FILLER&nbsp;PIC&nbsp;X(5)。<br/>&nbsp;&nbsp;&nbsp;输入123AS&nbsp;，&nbsp;显示123AS<br/>&nbsp;&nbsp;&nbsp;&nbsp;03&nbsp;VAR&nbsp;PIC&nbsp;99/XXX/9999&nbsp;长度11，输入05may2004,显示05/may/2004<br/>&nbsp;&nbsp;&nbsp;&nbsp;03&nbsp;VAR&nbsp;PIC&nbsp;0ABXXX/9999&nbsp;长度11，输入05may2004,显示05&nbsp;may/2004<br/>&nbsp;&nbsp;&nbsp;&nbsp;03&nbsp;VAR&nbsp;PIC&nbsp;9(3)&nbsp;长度3，0~999之间。<br/>&nbsp;&nbsp;&nbsp;&nbsp;03&nbsp;VAR&nbsp;PIC&nbsp;9(4)V99&nbsp;长度6，0.00~9999.99之间。<br/>&nbsp;&nbsp;&nbsp;&nbsp;03&nbsp;VAR&nbsp;PIC&nbsp;S9(5)V99&nbsp;长度7，-99999.99~99999.99之间。<br/>&nbsp;&nbsp;&nbsp;&nbsp;03&nbsp;VAR&nbsp;PIC&nbsp;9(6)PPP&nbsp;长度6，可以是1000，2000，...,999999000。输入1234，显示1000。<br/>&nbsp;&nbsp;&nbsp;&nbsp;03&nbsp;VAR&nbsp;PIC&nbsp;PPP999&nbsp;长度3，0.000001~0.000999之间。输入123，显示0.000123。<br/>&nbsp;&nbsp;&nbsp;&nbsp;03&nbsp;VAR&nbsp;PIC&nbsp;ZZZ.99，输入100.50,显示100.50;输入-51.50,显示51.50;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;输入0,显示.00.<br/>&nbsp;&nbsp;&nbsp;&nbsp;03&nbsp;VAR&nbsp;PIC&nbsp;$ZZZ.ZZ-，输入100.50,显示$100.50;输入-51.50,显示$51.50-;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;输入0,显示<br/>&nbsp;&nbsp;&nbsp;&nbsp;03&nbsp;VAR&nbsp;PIC&nbsp;$***,***.99CR，输入1000,显示$**1000.00;输入-1000,显示$**1000.00CR;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;输入0,显示$***,***.00;输入51.5,显示$***,*51.50<br/>&nbsp;&nbsp;&nbsp;&nbsp;03&nbsp;VAR&nbsp;PIC&nbsp;$$$,$$$.99，输入100.50,显示$100.50;输入-100.50,显示$100.50;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;输入0.777,显示$.77;输入0,显示$.00<br/>&nbsp;&nbsp;&nbsp;&nbsp;03&nbsp;VAR&nbsp;PIC&nbsp;$.$$$，输入1.00,显示$.00;输入0.65,显示$.65;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;输入0,显示$.00;<br/>&nbsp;&nbsp;&nbsp;&nbsp;03&nbsp;VAR&nbsp;PIC&nbsp;$--，输入17.7,显示$17;输入-17.7,显示$-17;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;输入-5,显示$-5<br/>&nbsp;&nbsp;&nbsp;&nbsp;03&nbsp;VAR&nbsp;PIC&nbsp;$999.99+，输入100.50,显示$100.50+;输入-100.50,显示$100.50-;<br/>&nbsp;&nbsp;&nbsp;&nbsp;03&nbsp;VAR&nbsp;PIC&nbsp;9(3)B9(3)，输入55,显示000&nbsp;055;输入1000.78,显示001&nbsp;000;&nbsp;<br/><br/>USAGE&nbsp;表示基本或组数据的类型。有BINARY,COMPUTATIONAL(COMP),DISPLAY,INDEX,PACKED-DECIMAL.&nbsp;<br/><br/>JUSTIFIED<br/>&nbsp;&nbsp;&nbsp;&nbsp;03&nbsp;VAR1&nbsp;PIC&nbsp;X(5)&nbsp;JUSTIFIED&nbsp;RIGHT.<br/>&nbsp;&nbsp;&nbsp;&nbsp;03&nbsp;VAR2&nbsp;PIC&nbsp;X(5).<br/>&nbsp;&nbsp;&nbsp;&nbsp;输入XYZ，VAR1显示的是&#34;&nbsp;&nbsp;XYZ&#34;,VAR2显示的是&#34;XYZ&nbsp;&nbsp;&#34;。&nbsp;<br/><br/>BLANK&nbsp;WHEN&nbsp;ZERO<br/>&nbsp;&nbsp;&nbsp;&nbsp;03&nbsp;VAR&nbsp;PIC&nbsp;$999,999.99&nbsp;BLANK&nbsp;WHEN&nbsp;ZERO&nbsp;.<br/>&nbsp;&nbsp;&nbsp;&nbsp;当字段值为0，这个项目设置为全部空格。&nbsp;<br/><br/>VALUE<br/>&nbsp;&nbsp;&nbsp;&nbsp;定义的时候就赋值。<br/>&nbsp;&nbsp;&nbsp;&nbsp;03&nbsp;VAR&nbsp;PIC&nbsp;X(5)&nbsp;VALUE&nbsp;&#34;ABCDE&#34;.<br/>&nbsp;&nbsp;&nbsp;&nbsp;01&nbsp;VAR&nbsp;VALUE&nbsp;ALL&nbsp;SPACES.<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;03&nbsp;VAR1&nbsp;PIC&nbsp;XXX.<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;03&nbsp;VAR2&nbsp;PIC&nbsp;XX.&nbsp;<br/><br/>算术语句<br/>&nbsp;&nbsp;&nbsp;&nbsp;COBOL中操作符执行顺序为：取正(+)、取负(-)最高级，指数操作(**)其次，乘(*)、除(/)再其次，加(+)、减(-)最后。<br/>ROUNDED&nbsp;&nbsp;&nbsp;舍入操作。<br/>&nbsp;&nbsp;&nbsp;&nbsp;77&nbsp;A&nbsp;PIC&nbsp;9V9&nbsp;VALUE&nbsp;9.1.<br/>&nbsp;&nbsp;&nbsp;&nbsp;77&nbsp;B&nbsp;PIC&nbsp;9.<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ADD&nbsp;0.5&nbsp;TO&nbsp;A&nbsp;GIVING&nbsp;B&nbsp;ON&nbsp;SIZE&nbsp;ERROR&nbsp;GO&nbsp;TO&nbsp;PROC1.<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ADD&nbsp;0.5&nbsp;TO&nbsp;A&nbsp;GIVING&nbsp;B&nbsp;ROUNDED&nbsp;ON&nbsp;SIZE&nbsp;ERROR&nbsp;GO&nbsp;TO&nbsp;PROC2.<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;END-ADD.<br/>ON&nbsp;SIZE&nbsp;ERROR&nbsp;是当语句出现错误时执行的。本例中第一句话执行没有错误，所以ON&nbsp;SIZE&nbsp;ERROR<br/>不执行PROC1.第二句话，当0.5加上9.1得到9.6，因为有ROUNDED,所以执行舍入操作，得到10。而B只有1位数字，所以发生错误，执行ON&nbsp;SIZE&nbsp;ERROR操作，跳转执行PROC2。&nbsp;&nbsp;<br/>CORRESPONDING(CORR)&nbsp;&nbsp;&nbsp;&nbsp;数据项同名时编写多条语句。ADD和SUBSTRACT有此选项。<br/>&nbsp;&nbsp;&nbsp;&nbsp;01&nbsp;A&nbsp;.<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;03&nbsp;B.<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;05&nbsp;B1&nbsp;PIC&nbsp;999V99.<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;05&nbsp;B1&nbsp;PIC&nbsp;999V99.<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;05&nbsp;B1&nbsp;PIC&nbsp;999V99.<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;03&nbsp;C.<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;05&nbsp;B1&nbsp;PIC&nbsp;999V99.<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;05&nbsp;B1&nbsp;PIC&nbsp;999V99.<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;05&nbsp;B1&nbsp;PIC&nbsp;999V99.<br/>则语句ADD&nbsp;CORR&nbsp;B&nbsp;TO&nbsp;C.相当于执行了下面3条语句。<br/>&nbsp;&nbsp;&nbsp;&nbsp;ADD&nbsp;B1&nbsp;OF&nbsp;B&nbsp;TO&nbsp;B1&nbsp;OF&nbsp;C.<br/>&nbsp;&nbsp;&nbsp;&nbsp;ADD&nbsp;B2&nbsp;OF&nbsp;B&nbsp;TO&nbsp;B2&nbsp;OF&nbsp;C.<br/>&nbsp;&nbsp;&nbsp;&nbsp;ADD&nbsp;B3&nbsp;OF&nbsp;B&nbsp;TO&nbsp;B3&nbsp;OF&nbsp;C.<br/>组项目不一定要格式相同。一个组项目中的内容在另一个组项目中可以没有，数据项顺序也无关紧要。只是严格按照数据项名称对应。<br/>&nbsp;&nbsp;&nbsp;&nbsp;ADD&nbsp;A,B&nbsp;GIVING&nbsp;C.&nbsp;END-ADD.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;将A,B相加放入C。<br/>&nbsp;&nbsp;&nbsp;&nbsp;SUBTRACT&nbsp;A,B&nbsp;FROM&nbsp;C。END-SUBTRACT.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;从C中减去A,B.<br/>&nbsp;&nbsp;&nbsp;&nbsp;MULTIPLY&nbsp;A&nbsp;BY&nbsp;B&nbsp;GIVING&nbsp;C.&nbsp;END-MULTIPLY.&nbsp;将A,B相乘放入C。<br/>&nbsp;&nbsp;&nbsp;&nbsp;DIVIDE&nbsp;A&nbsp;INTO&nbsp;B&nbsp;GIVING&nbsp;C.&nbsp;END-DIVIDE.&nbsp;&nbsp;&nbsp;将B除于A的结果放入C.<br/>&nbsp;&nbsp;&nbsp;&nbsp;DIVIDE&nbsp;A&nbsp;BY&nbsp;B&nbsp;GIVING&nbsp;C.&nbsp;END-DIVIDE.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;将A除于B的结果放入C.<br/>&nbsp;&nbsp;&nbsp;&nbsp;DIVIDE&nbsp;A&nbsp;BY&nbsp;B&nbsp;GIVING&nbsp;C&nbsp;REMAINDER&nbsp;D.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;将A除于B的商放入C，余数放入D.<br/>&nbsp;&nbsp;&nbsp;&nbsp;D=A-B*C.<br/>&nbsp;&nbsp;&nbsp;&nbsp;77&nbsp;C&nbsp;PIC&nbsp;S99V9.<br/>&nbsp;&nbsp;&nbsp;&nbsp;77&nbsp;D&nbsp;PIC&nbsp;S99V9.<br/>&nbsp;&nbsp;&nbsp;&nbsp;DIVIDE&nbsp;3&nbsp;INTO&nbsp;7&nbsp;GIVING&nbsp;C&nbsp;REMAINDER&nbsp;D.<br/>&nbsp;&nbsp;&nbsp;&nbsp;C的值为2.3，D为0.1。(D=7-3*2.3)&nbsp;<br/><br/>COMPUTE<br/>&nbsp;&nbsp;&nbsp;&nbsp;除了取余操作要用DIVIDE外，其他操作都可以用此语句。本语句求值一个算术表达式，并将结果存放在一个或几个变量中。<br/>COMPUTE&nbsp;&nbsp;A&nbsp;ROUNDED,B&nbsp;&nbsp;=&nbsp;X*Y/(N+M)+Z.&nbsp;将X*Y/(N+M)+Z的结果存放在B中，然后舍入后放入A中。&nbsp;<br/><br/>MOVE&nbsp;<br/>&nbsp;&nbsp;&nbsp;&nbsp;MOVE&nbsp;A&nbsp;TO&nbsp;B.<br/>&nbsp;&nbsp;&nbsp;&nbsp;也可以用CORR选项。<br/>&nbsp;&nbsp;&nbsp;&nbsp;MOVE&nbsp;CORR&nbsp;A&nbsp;TO&nbsp;B.<br/>]]></description>
		</item>
		
			<item>
			<link>http://www.isingapore.org/default.asp?id=146</link>
			<title><![CDATA[COBOL语言数据类型转换方法]]></title>
			<author>L#isingapore.org(习惯有你)</author>
			<category><![CDATA[关于大机]]></category>
			<pubDate>Tue,15 May 2007 15:07:24 +0800</pubDate>
			<guid>http://www.isingapore.org/default.asp?id=146</guid>	
		<description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;计息是银行的一项重要业务，包括日常代理客户收、付计算客户利息和年度计息等。目前，这些工作大多数是在IBM&nbsp;ES9000主机的SAFE应用系统平台上进行，该系统联机程序和联机计息程序是用IBM&nbsp;370汇编语言实现的。为方便汇编语言读写，在VSAM文件存储的数据中，数据存放格式进行了特殊的定义。如日期存放采用X(3)型，01年03月15日，存入EBCD码为X‘010315’。在进行年度计息时，为了实现各种复杂的运算工作，一般采用COBOL语言来实现各种运算。而采用COBOL语言读取X(3)型数据时，读出的是字符型数据，不能直接进行运算，必须转换为COBOL数据类型的数据后才能进行相应处理。如刚才的X‘010315’，需要转换为内部十进制数据X‘0010315C’。本文介绍一种用COBOL语言实现字符型X(3)与内部十进制数据相互转换的方法。&nbsp;<br/>由X(3)型转换为内部十进制&nbsp;<br/>由于日期数据总是大于零，在COBOL语言的工作单元节定义变量DATE－FIRST后，再追加定义COBOL语言的最小数据单元X‘000C’，即十进制12。由于重定义DATE－CASE为DATE－CHANGE后，DATE－CHANGE是原日期数据的1000倍，于是要在过程部将DATE－CHANGE除以1000。&nbsp;<br/>首先，在COBOL程序WORKING－STORAGE&nbsp;SECTION.&nbsp;中定义如下内容：&nbsp;<br/>WORKING－STORAGE&nbsp;SECTION.&nbsp;<br/>01&nbsp;DATE－CASE.&nbsp;<br/>02&nbsp;DATE－FIRST&nbsp;PIC&nbsp;X(3).&nbsp;&nbsp;<br/>02&nbsp;DATE－SIGN&nbsp;PIC&nbsp;9(4)&nbsp;COMP&nbsp;VALUE&nbsp;12.；定点二进制数&nbsp;&nbsp;<br/>01&nbsp;DATE－CHANGE&nbsp;REDEFINES&nbsp;DATE－CASE&nbsp;PIC&nbsp;9(9)&nbsp;COMP－3.&nbsp;；内部十进制数据&nbsp;<br/>01&nbsp;DATE－HEX&nbsp;PIC&nbsp;X（3）.&nbsp;；&nbsp;转换前数据&nbsp;<br/>01&nbsp;DATE－DEC&nbsp;PIC&nbsp;S9（7）COMP－3&nbsp;.&nbsp;；&nbsp;转换后数据&nbsp;<br/>然后，在过程部PROCEDURE&nbsp;DEVISION.中加入如下语句：&nbsp;<br/>PROCEDURE&nbsp;DEVISION.&nbsp;<br/>MOVE&nbsp;DATE－HEX&nbsp;TO&nbsp;DATE－FIRST&nbsp;.&nbsp;<br/>COMPUTE&nbsp;DATE－CHANGE&nbsp;=&nbsp;DATE－&nbsp;<br/>CHANGE&nbsp;/&nbsp;1000.&nbsp;&nbsp;<br/>MOVE&nbsp;DATE－CHANGE&nbsp;TO&nbsp;DATE－DEC.&nbsp;<br/>由内部十进制转换为X(3)型&nbsp;<br/>在进行相反的转换时，要消除因COBOL语言数据类型标志“C”引起的原日期数据前多加的一个0，所以需要将转换数据乘以10，再取出前6位数据即可。&nbsp;<br/>首先，在COBOL程序WORKING－STORAGE&nbsp;SECTION.&nbsp;中定义如下内容：&nbsp;<br/>WORKING－STORAGE&nbsp;SECTION.&nbsp;<br/>01&nbsp;WORK－DATE&nbsp;PIC&nbsp;S9(7)&nbsp;COMP－3.&nbsp;<br/>01&nbsp;AA&nbsp;REDEFINES&nbsp;WORK－DATE.&nbsp;<br/>02&nbsp;A1&nbsp;PIC&nbsp;X(3).&nbsp;<br/>02&nbsp;A2&nbsp;PIC&nbsp;X(1).&nbsp;<br/>01&nbsp;DATE－HEX&nbsp;PIC&nbsp;X(3).&nbsp;；转换后数据&nbsp;<br/>01&nbsp;DATE－DEC&nbsp;PIC&nbsp;S9(7)&nbsp;COMP－3.&nbsp;<br/>；转换前数据&nbsp;<br/>然后，在过程部PROCEDURE&nbsp;DEVISION.中加入如下语句即可：&nbsp;<br/>PROCEDURE&nbsp;DIVISION.&nbsp;&nbsp;<br/>MOVE&nbsp;DATE－DEC&nbsp;TO&nbsp;WORK－DATE。&nbsp;<br/>COMPUTE&nbsp;WORK－DATE=WORK－DATE＊10.&nbsp;<br/>MOVE&nbsp;A1&nbsp;TO&nbsp;DATE－HEX&nbsp;.&nbsp;<br/>]]></description>
		</item>
		
			<item>
			<link>http://www.isingapore.org/default.asp?id=145</link>
			<title><![CDATA[COBOL NOTES]]></title>
			<author>L#isingapore.org(习惯有你)</author>
			<category><![CDATA[关于大机]]></category>
			<pubDate>Tue,15 May 2007 15:06:16 +0800</pubDate>
			<guid>http://www.isingapore.org/default.asp?id=145</guid>	
		<description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;用法子句(USAGE子句)&nbsp;使用用法(USAGE)子句可以使程序设计者自由选挥数据杯内存中的存放形式。譬如，数据项A和B是需要多次进行运算，如果用外部十进制形式则来回转换会大大降低运算速度，这时，可以选择A和B为定点二进制形式或内部浮点形式．如果数据项C和D轻加运算次数少，而且需要多次打印出C和D的结果，这时用外部十进制比较适合，因为它最适合打印的要求，不必再进行转换。&nbsp;USAGE&nbsp;IS&nbsp;DISPLAY/COMP&nbsp;DISPLAY&nbsp;(标准数据形式。一个字节放一字符)&nbsp;COMP&nbsp;定点二近制形式&nbsp;COMP-1：内部短浮点形式&nbsp;COMP-2：内部长浮点形式&nbsp;COMP-3：内部十进制形式如果对组合项描述为某一种存放形式，则表示这个组合项的下属各初等项都是这&nbsp;种形式。&nbsp;USAGE子句指定的数据存放形式不应与PIC子句指定的数据类型矛盾．长、短浮点形式己确定了内存的长度，不应再用PIC子句．&nbsp;用WRITE语句输出时，是直接按内存中存放数据形式输出(不加转换的)．这是和用DISPLAY语句时不同的．]]></description>
		</item>
		
			<item>
			<link>http://www.isingapore.org/default.asp?id=108</link>
			<title><![CDATA[金融支付清算系统术语大全]]></title>
			<author>L#isingapore.org(习惯有你)</author>
			<category><![CDATA[关于大机]]></category>
			<pubDate>Fri,05 Jan 2007 19:58:05 +0800</pubDate>
			<guid>http://www.isingapore.org/default.asp?id=108</guid>	
		<description><![CDATA[资料介绍：<br/>这里的词汇是在最合适的一致性基础上对本书中涉及到的(十国集团和欧共体)中央银行所使用的术语给出解。它不打算对这些术语给出法律定义。应该认识到，它在其他语言中未必能找到完全等同的术语。&nbsp;<br/><br/>咨询轧差（advisory&nbsp;netting)：&nbsp;见状态轧差。<br/><br/>受保支付系统(assured&nbsp;payment&nbsp;system)(aps)：一种价值交换系统中的协议其中，及时完成一笔支付指令的结算，需要第三方(主要是银行、银行辛迪加或者清算所)不可撤销的和无条件的承诺支持。参见价值交换结算系统。&nbsp;<br/><br/>自动化清算所(automated&nbsp;clearing&nbsp;house)(ach)：一种电子清算系统，在系统中支付指令，主要借助磁介质或者通过电信网络在金融机构之间进行交换并由数据处理中心处理。参见清算。&nbsp;<br/><br/>自动柜员机(automated&nbsp;teller&nbsp;machine)(ATM)：一种可以让已授权的用户，主要利用机器可读的塑料卡，从其帐户提取现金并可向用户提供不同种类的其他服务诸如余额查询、资金转帐和接收存款的机电设备。ATM可以以联机实时查询授权数据库或者脱机两种方式运行。&nbsp;<br/><br/>银行汇票(bank&nbsp;draft)：在欧洲，该术语通常指一种由银行自身兑付的票据。银行汇票由付方在银行购买并发送给收方，收方提交银行汇票给收方的开户银行，收方的开户银行对收方支付。收方的开户银行再提交银行汇票给付方银行并由付方银行偿付。在美国，该术语通常指由银行自身或者从其他银行兑付的汇票或者支票。在银行本票中，银行既是出票人又是受票人。在银行柜员支票中，一家银行是出票人，另一家银行是受票人。银行汇票可能由银行按其自己的目的签发或者由客户购买并发送给收款人以清偿债。<br/><br/>批处理(batch)：一组支付指令和(或)证券转让指令以一个集合在处理点以不连续的时间间隔发送或处理。&nbsp;<br/><br/>受益所有权／权益(beneficial&nbsp;ownership/interest)：接收证券或其他金融票据的部分或全部所有权权益的权利(如收入、选举、转帐权)。受益所有权通常区别于证券或金融票据的法定所有权。参见法定所有权。&nbsp;<br/><br/>双边轧差结算系统(bilateral&nbsp;net&nbsp;settlement&nbsp;system)：它是一种结算系统，其参与者的双边轧差结算余额是在每对参与者之间进行结算的。参见净贷记和借记余额。&nbsp;<br/><br/>双边轧差(bilateral&nbsp;netting)：双方之间对其双边债务进行轧差的协议。协议包含的债务可能产生于金融合同或转帐交易或者同时产生于两者。参见轧差，多边轧差，净额结算。&nbsp;<br/><br/>汇票(bill&nbsp;of&nbsp;exchange)：一种由出票人提交给受票人的书面票据，它要求受票人对出票人或出票人指定的人随时或在规定的日期支付一笔特定的数额。广泛用于金融交易和(当在银行贴现时)获得信用。参见个人汇票。&nbsp;<br/><br/>簿记系统(book&nbsp;entry&nbsp;system)：一种在没有票据或者证券实物移动的情况下，能够进行债权(即证券)转让的记帐系统。参见无形化，停止流通。&nbsp;<br/><br/>批量转帐系统(bulk&nbsp;transfer&nbsp;system)：见零售转帐系统。&nbsp;<br/>活期借款(call&nbsp;money)：是一种借款合同，该合同每天都被自动地重新续约，除非放款人或借款人表示希望资金在短时期内归还。&nbsp;<br/><br/>资本风险(capital&nbsp;risk)：见本金风险。&nbsp;<br/><br/>最高限额(caps)：出于风险管理的目的，在营业日内对资金转帐或证券转让系统中的参与者可以发生的余额(借记或贷记余，它可能是净额或者全额)约定的量化限额。最高限额可以由参与者根据他向系统中的其他参与者提供的双边信用来确定，即双边信用&nbsp;<br/>限额，或者由系统的经营者或管理转帐系统的机构在汇总一个参与者在系统中可能发生的净借记基础上确定，即发送方的净借记限额。发送方的净借记限额，既可是有抵押的也可以是没有抵押的。<br/><br/>卡(card)：见提款卡、支票保付卡、芯片卡、信用卡、借记卡、延迟借记卡、预付卡、零售卡和旅行娱乐卡。&nbsp;<br/><br/>提款卡(cash&nbsp;card)：只在ATM或自动提款机上使用的卡(通常，其他的卡也有提款功能，它允许持卡人提取现金)。&nbsp;<br/><br/>自动提款机(cash&nbsp;dispenser)：允许客户，主要利用机器可读的塑料卡提取纸币，和在一些情况中也可提取硬币的电子机械设备。参见ATM。&nbsp;<br/><br/>本票(casher’s&nbsp;cheque)：见银行汇票。&nbsp;<br/><br/>中央银行信用(流动性)贷款(central&nbsp;bank&nbsp;credit&nbsp;(liquility)&nbsp;facility)：可由某些指定的中央银行帐户持有者(如银行)提用的常设的信用贷款。在一些情况中，开户人可主动使用贷款，而在另一些情况中，中央银行可能保留一定程度的决定权。借贷一般在往来帐户中以借款或者以证券抵押担保的透支形式(在一些欧洲国家也叫银行家借贷)或者以传统的票据再贴现形式出现。&nbsp;<br/><br/>中央证券托管(central&nbsp;security&nbsp;depository)：一种保管证券的服务，它使得证券的交易可以由簿记系统进行处理。实物证券可以固定地由托管机构保管而不进行实物交割，或是实现证券的无形化(即证券都是以电子记录的形式存在)。除了保管以外，中央证券托管可能还包含撮合、清算和结算功能。&nbsp;<br/><br/>凭证(certificate)：表明发行者债权、债务或其他未清偿金融债务的实物票据。&nbsp;<br/><br/>链(chaining)：在一些转帐系统中(主要是证券系统)用于处理交易指令的方法。该方法包括对处理转帐交易队列的控制(操纵)，以增加用可用资金和(或)证券往来余额(或可用信用和证券借贷额度)结算的转帐交易的数量和金额。&nbsp;<br/><br/>赊帐卡(charge&nbsp;card)：见旅行娱乐卡。&nbsp;<br/><br/>支票(cheque)：一种由出票人提交给受票人(通常是银行)的书面票据，它需要受票人对出票人或出票人所指定的人随时支付一笔特定的数额。广泛用于清偿债务和从银行提取现金。参见汇票。<br/><br/>支票保付卡(chque&nbsp;guarantee&nbsp;card)：作为支票担保制度的一部分而发行的卡。这一功能也可和其他的功能，如提款卡或借记卡的功能结合在同一张卡中。参见支票保付制。&nbsp;<br/><br/>支票保付制(cheque&nbsp;guarantee&nbsp;system)：一种对支票，主要是一定限额以内的支票进行担保的制度，商户既可根据对支票鉴发人发行的卡也可能通过商户可以访问的中央数据库确认。确认后的支票由保付卡的发行者、付款人的开户行或者系统的经营者担保。&nbsp;<br/><br/>芯片卡(chip&nbsp;card)：也称ic(集成电路)卡或者智能卡。在一张卡中包括用于识别、数据存储或特殊处理的一个或多个计算机芯片或集成电路，通常用于确认个人识别码(pin)、购买授权、修改帐户余额和存储个人档案。在一些情况中，当卡使用一次，卡的存储器就被更新一次，如更新帐户余额。&nbsp;<br/><br/>清算／票据交换(clearing/clearance)：清算是结算之前对支付指令或者证券转让指令进行发送、对帐和确认(在一些情况中)等处理，还可能包括指令轧差和产生结算的最终余额。在证券市场中，这一过程常常是指票据交换(clearance)。有时该术语包括(不准确)结算。&nbsp;<br/><br/>清算所(clearing&nbsp;house)：金融机构交换支付指令或者其他金融债务(即证券)的一个中心地点或者一种中央处理机制。金融机构根据清算所的章程和办法在指定的时间交换要结算的凭证。在一些情况中，清算所可能作为清算系统的重要订约方，或承担清算系统的金融或风险管理的责任。参见清算／票据交换，清算系统。<br/><br/>清算所资金(clearing&nbsp;house&nbsp;funds)：该术语广泛用于美国某些金融市场，主要是指在接收日是临时的而在次日是确定的资金。更特别地是，该词常常是指一些的清算所协定中，在结算清算处理中产生的债务时，由参与者交换的具有次日最终性的货币债权。这种债权主要通过支票、汇票或其他类似的支付工具进行转帐。&nbsp;<br/><br/>清算系统(clearing&nbsp;system)：金融机构在同一地点(清算所)向其他的金融机构提交并与其他金融机构交换与资金或转帐证券转让相关的数据和(或)文件的一套做法。这种做法经常也包含计算参与者的双边和/或多边轧差余额的机制，目的是便于在轧差或者净轧差的基础上进行金融机构之间债务的结算。参见轧差。&nbsp;<br/><br/>比较(comparison)：见撮合。&nbsp;<br/><br/>确认(confirmation)：这一广泛使用的术语的特定内涵是市场参与者通知其订约方或者客户有关交易的详情，主要是让他们有时间对交易进行批准和询问。&nbsp;<br/><br/>代理银行(correspondent&nbsp;banking)：一家银行(代理)拥有其他银行(委托人)存款并对那些委托银行提供支付和其他服务的一种协议。在一些国家中，这种协议也可称为代理关系。在国际金融中，为外国委托银行保存的余额可以用来结算外汇交易。相互代理的银行关系可能涉及到利用所谓的往来帐户来结算外汇交易。&nbsp;<br/><br/>订约方(counterparty)：一笔金融交易，诸如证券交易或外汇掉期协议中的对应方。&nbsp;<br/><br/>信用最高限额(credit&nbsp;caps)：见最高限额。&nbsp;<br/><br/>信用卡(credit&nbsp;card)：一种表明持卡人有一定信用额度的卡。它使得持卡人能够在预定的最高限额内进行购买活动，还能够提取现金；提供的信用可以在规定日期末一次付清，或者只偿付一部分，同时保留部分延期信用余额。任何延期的信用都要计息并且持卡人有时要交纳一笔年度费用。&nbsp;<br/><br/>信用卡公司(credit&nbsp;card&nbsp;company)：拥有特定信用卡商标的公司，并且也可能对利用卡服务的成员提供一系列的市场、处理或其他服务。&nbsp;<br/><br/>信用风险(credit&nbsp;risk/exposure)：交易中的订约方既不能在法定的时间内，也不能在法定时间以后的任何时间里全额结算其债务时所构成的风险。在价值交换系统中，信用风险通常定义包括重置成本风险和本金风险。&nbsp;<br/><br/>信用转帐(credit&nbsp;transfer)：为把资金转给受益人由其使用支配而发出的一笔或者一个序列的支付指令。支付指令及指令中所规定的资金都从付款人／发起者的开户行移交到受益人的开户行，这中间可能要通过若干家作为中介的其他银行，并有可能通过不止一个信用转帐系统来完成。&nbsp;<br/><br/>信用转帐系统(或直接转帐系统)(credit&nbsp;transfer&nbsp;system&nbsp;o&#114;&nbsp;giro&nbsp;system)：&nbsp;一种通过发送支付指令及指令中所记述的资金来实现信用转帐目的的系统。&nbsp;<br/><br/>跨国货币结算风险(或赫思塔特风险)(cross&nbsp;currency&nbsp;settlement&nbsp;risk&nbsp;o&#114;&nbsp;herstatt&nbsp;risk)：见本金风险。&nbsp;<br/><br/>保管(custody)：为其他人保存和管理证券和金融工具。<br/><br/>日间信用(或日间透支、日间风险、日内信用)(daylight&nbsp;credit&nbsp;o&#114;&nbsp;daylight&nbsp;overdraft,&nbsp;daylight&nbsp;exposure,&nbsp;intraday&nbsp;credit)&nbsp;：一个营业日以内的信用；在日终结算的信用转帐系统中，假定接收了支付指令的机构接收了支付指令并且即使这家机构在营业日结算前不能收到最终资金也按指令的要求行动的话，它就在实事上心照不宣地提供了日间信贷。&nbsp;<br/><br/>借记最高限额(debit&nbsp;caps)：见最高限额。&nbsp;<br/><br/>借记卡(debit&nbsp;card)：使持卡人能够直接地从他在吸收存款的机构中开立的帐户对其购买活动进行付款的卡(有时还可能结合有其他的功能，例如具有提款卡或支票保付卡的功能)。&nbsp;<br/><br/>借记转帐系统(或借记托收系统)(debit&nbsp;transfer&nbsp;system&nbsp;o&#114;&nbsp;debit&nbsp;collection&nbsp;system)：它是一种资金转帐系统，其中由付款人生成的或者授权的借记托收指令从收款行转发到付款行并对付款人的帐户扣帐(借记)；例如，支票的转帐系统都是典型的借记转&nbsp;<br/>帐系统。&nbsp;<br/><br/>丧失清偿能力(default)：出于银行倒闭而非技术或临时性的原因，造成不能根据其合同条款完成资金转帐或证券转让的行为。丧失清偿能力通常用来区分“失效交易”。&nbsp;<br/><br/>延迟借记卡(delayed&nbsp;debit&nbsp;card)：它是由银行发行的卡，持卡人可以在一定的已授权限额内赊支其帐户。它让持卡人能够进行购买活动而不需增加其帐户的信用，发生的债务总额必须在一个特定的日期结算。持卡人通常要交纳一笔年度费用。&nbsp;<br/><br/>删除(deletion)：一种机制，借此一些或全部发送给丧失清偿能力的参与者和由其提交的转帐指令都从结算进程中排除掉；在轧差机制中，其他参与者的双边、或多边轧差余额、或两者都要重新计算。参见解退。&nbsp;<br/><br/>交割(delivery)：证券或金融工具的最终转让。&nbsp;<br/><br/>付款交割方式(或dvp)(delivery&nbsp;versus&nbsp;payment&nbsp;system&nbsp;o&#114;&nbsp;dvp,&nbsp;delivery&nbsp;against&nbsp;payment)：在价值交换结算系统中的一种机制，确保他方在并且仅在他方的资产最终转让发生的同时发生本方的资产最终转让。资产可能包括货币资产(诸如外汇)、证券或其他金融工具。参见价值交换结算系统，最终性转帐。&nbsp;<br/><br/>无形化(dematerialisation)：消除实物证券或者代表证券所有权的契约文件以致证券只是以会计记录的形式存在。&nbsp;<br/><br/>直接借记(direct&nbsp;debit)：由收款人对付款人的银行帐户发起的事先由付款人授权借记。&nbsp;<br/><br/>直接参与者／会员(direct&nbsp;participant/member)：该术语通常指资金转帐或证券转让系统中直接与系统中的其他参与者交换转帐指令的参与者。在一些系统中，直接参与者也可代表间接参与者交换指令。根据不同的系统，直接参与者可能是也可能不是结算的参与者。在欧共体的文章中，这一名词具有特定的意思：它是指转帐系统中负责对结算机构(或对其他所有的参与者)结算其自己的、客户的以及所代表间接参与者的支付的参与者。参见参与者／会员，间接参与者／会员，结算参与者／会员。&nbsp;<br/><br/>清偿(discharge)：从合同或法律强加的法定债务中解脱出来。&nbsp;<br/><br/>个人汇票(draft)：由出票人提交给受票人的，向票据中指定的当事人或向出票人自己随时(即期个人汇票)或按规定时间(定期个人汇票)支付一定数额的书面指令。参见支票、银行汇票、汇票。&nbsp;<br/><br/>EFT&nbsp;POS：见销售点(pos)。&nbsp;<br/><br/>电子数据交换(elctronIC&nbsp;data&nbsp;interchange)(edi)：商业部门(在一些情况中也有公共行政机构)间对一系列信息类诸如订单、发票、海关报单、汇款通知书和支付的相关数据，以标准格式进行的电子交换。edi信息通过公用数据传输网络或者银行系统的渠道传送。edi发起的任何资金流动都反映在银行系统流动的支付指令中。edifact是联合国的一个机构，负责制定电子数据交换标准。&nbsp;<br/><br/>价值交换结算系统(exchange&nbsp;for&nbsp;value&nbsp;settlement&nbsp;system)：涉及资产诸如资金、外汇、证券和其他金融工具的交换系统，目的在于清偿结算债务。这些系统可能需要利用一个或多个资金转帐系统来偿清生成的支付债务；资产交换和支付系统间的联接方式可以是手工方式也可以是电子方式。参见付款交割方式。<br/><br/>面对面支付(face&nbsp;to&nbsp;face&nbsp;payment)：在同一个自然地点,付款人和收款人之间通过支付工具交换所实现的支付。&nbsp;<br/><br/>失效交易(failed&nbsp;transaction)：通常是由技术性和临时性原因造成的不能按时结算的交易(如资金转帐或证券转让)。&nbsp;<br/><br/>最终的(最终性)(final&nbsp;(finality)&nbsp;)：不可撤销的和无条件的。&nbsp;<br/><br/>最终结算(final&nbsp;settlement)：不可撤销的和无条件的结算。&nbsp;<br/><br/>最终性转帐(final&nbsp;transfer)：一种不可撤销的和无条件的转帐，它完成转帐债务的清偿。术语“交割”和“支付”都必然包含一次最终性转帐。&nbsp;<br/><br/>直接转帐系统(giro&nbsp;system)：见信用转帐系统。&nbsp;<br/><br/>死锁(gridlock)：在资金转帐或证券转让系统中，由于一些转帐指令不能执行(因为没有足够的资金或证券余额)，而产生阻碍其他参与者的大量其他指令完成的情况称为死锁。参见失效交易，排队，系统风险。&nbsp;<br/><br/>全额结算系统(gross&nbsp;settlement&nbsp;system)：一种按照系统的章程和办法，对转帐指令逐笔结算即没有轧差借记抵付贷记的转帐系统。<br/><br/>垫头(haircut)：证券的市场价值与其抵押价值之间的差额。在出现清理抵押品的要求时，资金的放款方通常采用垫头来保护他免受证券市场价值下降所带来的风险。参见保证金。<br/><br/>赫思塔特风险(herstatt&nbsp;risk)：见跨国货币结算风险。&nbsp;<br/><br/>家庭银行(home&nbsp;banking)：金融机构的客户可以利用电话、电视、终端和个人计算机作为与金融机构的计算机中心相连的电信终端获得的银行业务服务。<br/><br/>IC卡(IC&nbsp;card)：见芯片卡。&nbsp;<br/><br/>停止流通(immobilisation)：将上市证券和金融票据存放在中央证券托管机构，其目的在于促进簿记转帐。&nbsp;<br/><br/>打码器(imprinter)：在纸销售单据上再次产生持卡人姓名和帐号的机械设备。参见打码票据。&nbsp;<br/><br/>打码票据(imprinter&nbsp;voucher)：在卡交易中，客户姓名和卡号都打印在上面的一种需要客户签名的销售单据。参见打码器。<br/><br/>间接参与者／会员(indirect&nbsp;participant/member)：与存在分层协议的资金转帐或证券转让系统有关。间接参与者与直接参与者的区别在于他们无法完成一些由直接参与者完成的系统业务(比如转帐指令输入、结算)。所以，间接参与者需要直接参与者为他们服务，代表他们来进行这些业务。在欧共体的文章中，该术语特指转帐系统中只负责对其直接参与者来结算其提交给系统的支付指令的参与者。参见直接参与者／会员，结算参与者／会员，分层协议。&nbsp;<br/><br/>行间资金转帐系统(ifts)(interbank&nbsp;fund&nbsp;transfer&nbsp;system)：一种资金转帐系统，其中绝大多数(或全部)直接参与者都是金融机构，特别是银行和其他信用机构。&nbsp;<br/><br/>日内信用：见日间信用。&nbsp;<br/><br/>不可撤销的和无条件的转帐(irrevocable&nbsp;and&nbsp;unconditional&nbsp;transfer)：&nbsp;不能由转帐人撤销的并且是无条件执行的转帐。&nbsp;<br/><br/>发行商(issuer)：对证券或其他金融工具负有债务的机构。例如，有权发行和出售证券的公司和政府机构；批准信用证的银行。过去常指发行贷记或借记卡的金融机构。&nbsp;<br/><br/>大额资金转帐系统(large&nbsp;value&nbsp;funds&nbsp;transfer&nbsp;system)：系统的参与者对他们自己的帐户或代表其客户进行的大额资金转帐和高优先级资金转帐的行间资金转帐系统。尽管对所进行的支付没有最小的金额的规定，但通过这些系统的平均支付额都相当大。大额资金转帐系统有时也称批发资金转帐系统。&nbsp;<br/><br/>法定所有权(legal&nbsp;ownership)：证券或其他金融工具所有者的法律认定。&nbsp;<br/><br/>信用证(letter&nbsp;of&nbsp;credit)(l／c)：银行或者其他发行商根据特定的条件，代表客户对第三方进行支付的一种承诺。常用于国际贸易中，以便使得资金可在国外某地抵用。&nbsp;<br/><br/>流动性风险(liquidity&nbsp;risk)：订约方(或者结算系统的参与者)到期不能全部结算债务时所产生的风险。流动性风险并不是指订约方或者参与者没有偿付能力，因为他或许在以后的某一个不确定的时间能够结算其所必须清偿的债务。&nbsp;<br/><br/>损失分摊原则(或损失分摊协议)(loss&nbsp;sharing&nbsp;rule&nbsp;o&#114;&nbsp;loss&nbsp;sharing&nbsp;agreement)：当转帐系统或者清算所的参与者在一个或多个参与者不能清偿其债务时，对所产生的任何损失进行分摊的协议：协议规定了其生效后损失将如何在有关的参与者之间分摊。&nbsp;<br/><br/>磁性墨水字符识别(magnetIC&nbsp;ink&nbsp;character&nbsp;recognition)&nbsp;(micr)：一种使用特殊的micr机器可读字符的技术，通过它，文件(即支票、信用转帐、直接借记)可由micr设备自动读入以进行电子处理。参见光学字符识别(ocr)。&nbsp;<br/><br/>保证金(margin)：保证金至少有两种意思。在期货／商品市场中，保证金指期货清算系统为确保偿付所要求的良好信誉储蓄(货币、证券或其他金融工具)。在股票市场中，保证金指从经纪人借款购买股票的客户所存的货币总和。在经纪人那里的存款等于股票的购买值与股票的抵押品价值之差。参见垫头。&nbsp;<br/><br/>入市标价(marking&nbsp;to&nbsp;market)：利用当前的市场价格对证券或其他金融工具重新估价的做法。在一些情况中，未结的证券买卖合同都要入市标价，并且合同中有未实现亏损的一方在那时要对另一方的损失值转让同等价值的资金或证券。&nbsp;<br/><br/>撮合(或比较检查)(matching&nbsp;o&#114;&nbsp;comparison&nbsp;checking)：市场参与者在交易结算之前所进行的处理，目的在于确保它们同意交易的有关条款。&nbsp;<br/><br/>汇款单(money&nbsp;o&#114;der)：用于对记名收款人汇款的工具。通常由没有金融机构支票帐户的人使用，用于支付帐单和对其他人或者公司转让资金。汇款单中存在3个法人：汇款人(付款人)、收款人和受票人。受票人通常是金融机构或邮政局。收款人可以兑现其汇款单也可提交给其开户行托收。<br/>]]></description>
		</item>
		
</channel>
</rss>