日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

着法表示

發(fā)布時(shí)間:2025/5/22 编程问答 13 豆豆
生活随笔 收集整理的這篇文章主要介紹了 着法表示 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
一、棋盤的標(biāo)記     象棋的著法表示,簡而言之就是某個(gè)棋子從什么位置走到什么位置。通常,表示方法可以分為“縱線方式”和“坐標(biāo)方式”兩種,現(xiàn)在作簡要說明:   (1) 縱線方式,它是中國象棋常用的表示方法,即棋子從棋盤的哪條線走到哪條線。中國象棋規(guī)定,對(duì)于紅方來說的縱線從右到左依次用“一”到“九”表示,黑方則是“1”到“9”(如圖一所示),這種表示方式體現(xiàn)了古代中國象棋研究者的智慧。   (2) 坐標(biāo)方式,它是國際象棋常用的表示方法,把每個(gè)格子按坐標(biāo)編號(hào)(如圖二所示),只要知道起始格子和到達(dá)格子,就確定了著法,這種表示方式更方便也更合理,而且還可以移植到其他棋類游戲中。中國象棋也可以用這種方法來表示,按照國際象棋的規(guī)則,縱線從左到右(紅方)依次為a b c d e f g h i,橫線從下到上(紅方)依次為0 1 2 3 4 5 6 7 8 9(如圖三所示)。 ?
 abcdefgh 
88
77
66
55
44
33
22
11
 abcdefgh 
 abcdefghi 
99
88
77
66
55
44
33
22
11
00
 abcdefghi 
圖一圖二圖三
二、棋子的名稱 為方便表示,中國象棋的棋子名稱除了用漢字以外,還可以用字母,字母可從國際象棋中稍加改動(dòng)得到,而數(shù)字是為了方便棋譜的輸入(以便用在數(shù)字小鍵盤上)(見表一)
紅方黑方字母相當(dāng)于國際象棋中的棋子數(shù)字
KKing()1
AAdvisor(沒有可比較的棋子)2
B[1]Bishop()3
N[2]Knight()4
RRook()5
CCannon(沒有可比較的棋子)6
PPawn()7
表一 中國象棋棋子代號(hào)

[1] 世界象棋聯(lián)合會(huì)推薦的字母代號(hào)為E(Elephant)

[2] 世界象棋聯(lián)合會(huì)推薦的字母代號(hào)為H(Horse)

三、ICCS坐標(biāo)格式

    ICCS是中國象棋互聯(lián)網(wǎng)服務(wù)器(Internet Chinese Chess Server)的縮寫。在網(wǎng)絡(luò)對(duì)弈服務(wù)器處理著法時(shí),把著法表示成起點(diǎn)和終點(diǎn)的坐標(biāo)是最方便的 ,因此這種格式最早在計(jì)算機(jī)上使用。 ?

??
1. H2-E2(炮二平五) H7-E7(炮8平5)
2. E2-E6(炮五進(jìn)四) D9-E8(士4進(jìn)5)
3. H0-G2(馬二進(jìn)三) H9-G7(馬8進(jìn)7)
4. B2-E2(炮八平五) B9-C7(馬2進(jìn)3)
5. E6-E4(前炮退二) I9-H9(車9平8)
6. ……(如右圖)   

?

?

四、中文縱線格式

這種格式對(duì)于廣大象棋愛好者來說再熟悉不過了,但是這里還是要說明兩個(gè)重要的細(xì)節(jié)。 一、仕()和相()如果在同一縱線上,不用“前”和“后”區(qū)別,因?yàn)槟芡说囊欢ㄔ谇?#xff0c;能進(jìn)的一定在后。 二、兵要按情況討論: (1) 三個(gè)兵在一條縱線上:用“前”、“中”和“后”來區(qū)別; (2) 三個(gè)以上兵在一條縱線上:最前面的兵用“一”代替“前”,以后依次是“二”、“三”、“四”和“五”; (3) 在有兩條縱線,每條縱線上都有一個(gè)以上的兵:按照“先從右到左,再從前到后”(即先看最左邊一列,從前到后依次標(biāo)記為“一”和“二”,可能還有“三”,再看右邊一列)的順序,把這些兵的位置標(biāo)依次標(biāo)記為“一”、“二”、“三”、“四”和“五”,不在這兩條縱線上的兵不參與標(biāo)記。 如右圖局面,四個(gè)兵分別位于四線和六線,下表列舉了幾種走法的坐標(biāo)格式和縱線格式。
?
中文縱線格式數(shù)字縱線格式坐標(biāo)格式
一兵平五Pa.5F8-E8
二兵平五Pb.5F6-E6
兵五進(jìn)一P5+1E7-E8
三兵平五Pc.5D8-E8
四兵平五Pd.5D6-E6
另外需要注意的是: (1) 如果黑方出現(xiàn)數(shù)字,不管數(shù)字代表縱線標(biāo)號(hào)還是前進(jìn)或后退的格數(shù),都用阿拉伯?dāng)?shù)字表示,在計(jì)算機(jī)中顯示全角的數(shù)字。但是代表同一縱線上不同兵的“一二三四五”(它們類似于“前中后”的作用)例外,例如例局面紅黑互換,那么某步著法就應(yīng)該寫成“一卒平5”。 (2) 在傳統(tǒng)的象棋記譜中,如果發(fā)生以上這種情況,通常用五個(gè)字來表示,例如“前兵四平五”等,在計(jì)算機(jī)處理過程中就比較麻煩,因?yàn)?font face="Times New Roman">4個(gè)漢字(一個(gè)漢字占16)的著法可以儲(chǔ)存在一個(gè)64位的字當(dāng)中(C語言中數(shù)據(jù)類型為__int64long long),而增加到5個(gè)漢字就比較麻煩了。黑方用全角的數(shù)字是同一個(gè)道理。 五、WXF縱線格式 WXF是世界象棋聯(lián)合會(huì)(World XiangQi Federation)的縮寫,在該組織建議的記譜方式中,漢字被字母和數(shù)字所代替,即“進(jìn)”、“退”和“平”分別用符號(hào)“+”、“-”和“.”表示,“前”、“中”和“后”也分別用符號(hào)“+”、“-”和“.”表示,并且寫在棋子的后面(例如“前炮退二”寫成“C+-2”而不是“+C-2),多個(gè)兵位于一條縱線時(shí),代替“前中后”的“一二三四五”分別用“abcde”表示(這種情況極少發(fā)生)。 另外,代表棋子名稱的第一個(gè)字母,還可以用數(shù)字17表示,這是為了方便數(shù)字小鍵盤的輸入,例如“炮二平五”可以記作“62.5(6代表炮)選用符號(hào)“+”、“-”和“.”也是出于這個(gè)考慮。 六、棋子代號(hào)問題 符號(hào)縱線格式是世界象棋聯(lián)合會(huì)(WXF)推薦的記譜格式,但是現(xiàn)在棋子的字母代號(hào)用法不一,主要問題集中在仕()、相()和馬的翻譯上。仕()譯成AdvisorBachelorGuard等,相()譯成BishopElephantMinister等,馬譯成HorseKnight。 出于這點(diǎn)考慮,很多象棋軟件都能識(shí)別不同的代號(hào),例如ElephantBoardBE都解釋為相()HN都解釋為馬,SaoLa則可以由用戶自定義字母代號(hào),等等。 七、簡體和繁體的識(shí)別問題 無論采取哪種格式記譜,棋譜最終應(yīng)該被象棋軟件所識(shí)別。通常象棋軟件都應(yīng)支持以上三種格式,除“中文縱線格式”以外,其他兩種格式都用英文和數(shù)字表示,不涉及中文字符,所以處理起來比較容易。而中文格式卻非常麻煩,除了涉及到簡體還是繁體外,還有字符集的問題。 象棋軟件應(yīng)該充分考慮這個(gè)問題,例如ElephantBoard在這個(gè)問題上就考慮得十分周到。在GB字符集(大陸地區(qū))里,可識(shí)別簡體和繁體字符,而在Big5字符集(港臺(tái)地區(qū))里,由字符集轉(zhuǎn)換引起的問題也考慮進(jìn)去了——表示棋子位置的“后”,由GB字符轉(zhuǎn)換為Big5字符時(shí),仍然寫為“后”,但正確的寫法是“後”,無論如何這兩個(gè)“后()”都會(huì)被ElephantBoard認(rèn)可。 轉(zhuǎn)自:http://www.elephantbase.net/protocol/cchess_move.htm

轉(zhuǎn)載于:https://www.cnblogs.com/yang_sq/archive/2010/01/05/1639534.html

總結(jié)

以上是生活随笔為你收集整理的着法表示的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。