---
title: "怎樣讀棋譜 —— 中文縱線格式與WXF記譜法 · Xiangqi Master"
description: "讀懂象棋記譜：路數為什麼紅黑相反，進退平怎麼用，什麼時候末位是步數、什麼時候是路數，以及前後的用法。"
url: https://xiangqimaster.com/zh-hant/rules/notation
updated: 2026-09-06
source: Xiangqi Master (https://xiangqimaster.com)
license: CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/)
---

# 怎樣讀棋譜

本頁所有局面、着法與合法性判斷，均由我們開源的規則引擎在構建時逐一校驗。該引擎實現亞洲象棋聯合會（WXF）規則，並以官方110局例的重複局面判例集作回歸測試。

> 直接回答
>
> 象棋記譜寫四樣東西：哪個子、在第幾路、往哪個方向、到哪裡。炮二平五 就是“中路那門炮平到五路”。最容易出錯的一條是：**末位數字有時是路數，有時是步數**，車炮兵將直進直退時數的是步數，馬象士則永遠寫落點的路數。

## 一着棋的四個部分

一着棋寫作四個字：**棋子 + 路數 + 方向 + 目標**。以 炮二平五 為例：

| 字 | 意思 |
| --- | --- |
| 炮 | 哪個子 |
| 二 | 它現在在第二路 |
| 平 | 橫着走（不進不退） |
| 五 | 走到第五路 |

方向只有三個：進（向對方推進）、退（向自己一側後撤）、平（橫走，不改變所在橫線）。

## 路數從自己的右邊數起

這是讀譜時最容易繞暈的一條，也是最該先弄清的。

**每一方都從自己的右手邊開始數九條路。**雙方面對面而坐，所以兩套路數的方向正好相反：紅方的一路和黑方的1路，在棋盤的兩端。

紅方用漢字數目 一二三四五六七八九，黑方用阿拉伯數字 1 2 3 4 5 6 7 8 9。這個區別很有用——**光看數字就知道是誰走的**。

最能說明問題的是兩着互為鏡像的馬：

| 着法 | 中文 | WXF | 哪一隻馬 |
| --- | --- | --- | --- |
| 紅方左馬 | 傌八進七 | `H8+7` | 紅方八路上的馬 |
| 黑方右馬 | 馬8進7 | `H8+7` | 黑方8路上的馬 |

看 WXF 那一列：`H8+7` 和 `H8+7` 是*同一個字符串*，描述的卻是棋盤兩端的兩隻不同的馬。WXF 本身分不出來，只有知道輪到誰走才分得出。中文格式反而沒有這個問題——一個寫 八，一個寫 8。

## 末位數字：有時是路數，有時是步數

這是記譜法裡唯一不規則的地方，也是自學看譜最常出錯的一處。

| 什麼情況 | 末位是 | 例子 |
| --- | --- | --- |
| 任何橫走（平） | 目標路數 | 俥九平六 |
| 車、炮、兵、將直進直退 | **走了幾步** | 俥九進一 |
| 馬、象、士 | 永遠是目標路數 | 相三進五 |

道理並不難：前一類走直線，報步數不會有歧義；後一類走斜線，光報步數說不清是哪一條斜線，所以必須報落點。

比較這兩着車——同一個子、同一路，末位數的是橫線變化的格數，而不是某一條橫線的編號：

| 中文 | WXF | 含義 |
| --- | --- | --- |
| 俥九進一 | `R9+1` | 車向前走一步 |
| 俥九進二 | `R9+2` | 同一個車向前走兩步 |

## 兩個同樣的子在同一路上：前與後

如果同一路上有兩個車，“幾路車”就指不清是哪一個。這時用位置代替路數：

- 前——靠近對方的那個。
- 後——靠自己這邊的那個。
- 中——三個兵（卒）同處一路時的中間那個。

注意位置字寫在**棋子名之前**，而路數是寫在名字之後的：

| 中文 | WXF | 哪一門炮 |
| --- | --- | --- |
| 前炮進一 | `+C+1` | 兩炮中靠前的那門，向前一步 |
| 後炮進一 | `-C+1` | 靠後的那門，向前一步 |

士和象永遠不用前後。同一路上的兩個士（或兩個象）必然相隔兩條橫線，走到同一個落點時一個是進、一個是退，方向本身就分得開，再加前後就多餘了。

## 完整例子

象棋裡出現最多的開局，頭三着。點“下一步”，對照棋盤把每一着讀一遍。

點“下一步”，把這個開局讀一遍。

中炮對屏風馬。每一着同時給出中文與WXF兩種寫法，都由校驗這些着法的同一套引擎生成。

> Diagram: Xiangqi position. Red: soldier a3, soldier c3, soldier e3, soldier g3, soldier i3, cannon b2, cannon h2, chariot a0, horse b0, elephant c0, advisor d0, general e0, advisor f0, elephant g0, horse h0, chariot i0. Black: chariot a9, horse b9, elephant c9, advisor d9, general e9, advisor f9, elephant g9, horse h9, chariot i9, cannon b7, cannon h7, soldier a6, soldier c6, soldier e6, soldier g6, soldier i6. Red to move.

## 速查

| 棋子 | 紅 | 黑 | WXF |
| --- | --- | --- | --- |
| 將／帥 | 帥 | 將 | `K` |
| 士／仕 | 仕 | 士 | `A` |
| 象／相 | 相 | 象 | `E` |
| 馬 | 馬 | 馬 | `H` |
| 車 | 車 | 車 | `R` |
| 炮 | 炮 | 炮 | `C` |
| 兵／卒 | 兵 | 卒 | `P` |

棋盤上的棋子多用傳統字形（帥 仕 相 傌 俥 炮 兵 與 將 士 象 馬 車 砲 卒），記譜寫成簡體時則作馬、車、炮。兩者所指相同，本站的棋盤兩種寫法都認。

此外還有一種 **ICCS** 坐標記法，把上面第一着寫作 `H2-E2`。它是引擎和棋譜資料庫用的格式，好處是不需要知道局面就能解析，缺點是沒人這麼說話。

## 常見錯誤

#### 紅黑兩方從同一邊數路數。

各從自己的右邊數起。症狀通常是把黑方的着法讀到鏡像的那一路上去，然後發現局面完全對不上。

#### 把末位數字一律當成路數。

車、炮、兵、將直進直退時，末位是**步數**。俥九進二 是向前走兩步，不是走到第二條橫線。

#### 以為馬的末位也是步數。

馬、象、士永遠寫落點的路數——走斜線的子只報步數說不清是哪條斜線。

#### 把前後寫在棋子名後面。

位置字寫在前面：前炮進一，不是“炮前進一”。寫在後面的是路數。

## 相關問題

象棋棋譜怎麼看？

四個字：棋子、路數、方向、目標。炮二平五 就是“二路的炮平到五路”。唯一不規則的是末位——橫走和馬象士寫路數，車炮兵將直進直退寫步數。

炮二平五是什麼意思？

紅方二路的炮橫移到五路，也就是中路，正對黑方將門。這是象棋最流行的第一着，即[中炮](https://xiangqimaster.com/openings/central-cannon)。

為什麼紅黑的路數是反的？

因為各自從自己的右手邊數起，而雙方面對面而坐。好處是紅用漢字數目、黑用阿拉伯數字，光看數字就知道是誰走的。

“馬八進七”和“馬八進二”哪個對？

要看馬實際落在哪一路。馬寫的是**落點的路數**而不是步數，所以末位取決于它跳到了第幾路。

前炮、後炮怎麼區分？

同一路上有兩門炮時，靠近對方的寫“前”，靠自己的寫“後”，位置字寫在“炮”之前：前炮進一、後炮進一。

WXF記譜法和中文記譜法有什麼區別？

只有字形不同。WXF 用拉丁字母代替棋子名、阿拉伯數字代替漢字數目、`+ − =` 代替進退平，語法完全一樣。WXF 略有歧義：兩方都用阿拉伯數字，光看字符串不知道是誰走的。

## 相關內容

象棋規則總覽

象棋術語

中炮

棋盤與擺子

## 對着真棋盤讀譜

每走一着，本站都同時顯示中文與WXF兩種寫法——這是停止“翻譯”、開始直接讀譜最快的辦法。
