---
title: "馬後炮 —— 象棋最經典的殺法 · Xiangqi Master"
description: "象棋最廣為人知的殺法：炮隔着自己的馬將軍，而馬正好控制住將唯一能逃的兩個點。附經引擎校驗的可交互局面。"
url: https://xiangqimaster.com/zh-hant/tactics/horse-behind-cannon
updated: 2026-09-07
source: Xiangqi Master (https://xiangqimaster.com)
license: CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/)
---

# 馬後炮

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

> 直接回答
>
> 馬後炮的形狀就寫在名字裡：**馬在前，炮在後，同在一條線上**。炮以自己的馬作炮架將軍；馬控制住將橫走的那兩個點；中間那一點仍在炮的射線上。將無處可去。

## 棋形

名字就是擺法：炮在馬的後面。炮吃子需要不多不少一個炮架，這裡的炮架正是自己的馬——所以這兩個子是互相成全，而不是互相擋路。

紅先。一步成殺。

紅先，一步成殺。

馬後炮的完成圖。將能去的每一個點，都被這兩個子中的一個罩住了。

> Diagram: Xiangqi position. Red: horse e7, cannon a5, general d0. Black: general e9. Red to move.

## 將為什麼跑不掉

把將的選擇一個一個過一遍，這樣這個棋形才真正記得住：

- **橫走。**將兩側的點都在馬的控制之下——馬從正前方罩着它們。
- **向前，朝炮走。**仍在同一條線上，馬仍是炮架，炮仍在將軍。
- **吃掉那隻馬。**夠不着。馬在兩格之外，不是一格。

整個殺法就是這樣。它只要兩個子，不需要任何接應——這正是它在各種水平的對局裡都會出現的原因。

## 實戰中怎麼擺出來

**幾乎總是馬先到。**馬要三四步才能走到對方九宮前的那個點，而一旦站穩就很難被趕走——因為能攻擊到馬的那些點，恰恰是防守方的將夠不到的。

**炮是快的那一半。**它可以從很遠的地方一步平到那條線上，所以這個殺法常常顯得很突然。如果對方的將前面已經有一隻馬釘在那兒，先數一數炮要走幾步，再考慮別的。

防守辦法是：提前擋住那條線，或者早點給將留一個空點。士擺在錯誤的位置，往往是這個殺法能成立的原因。

## 常見錯誤

#### 把炮擺在馬的前面。

那樣就成了“炮後馬”，炮反而沒有炮架。名字裡的順序就是這個棋形本身：馬在前，炮在後。

#### 讓第二個子上到那條線上。

炮與將之間必須不多不少一個子。無論哪一方再加一個，將軍立刻失效。

#### 馬還沒到位就先追着將將軍。

把將趕到更安全的點上，只會讓這個殺法更難成立。先擺馬，再上炮。

## 相關問題

“馬後炮”是什麼意思？

字面就是“炮在馬的後面”，指的正是兩個子的擺法：馬在前，炮在同一條線的後面，馬充當炮所需要的炮架。

馬後炮為什麼這麼常見？

它只需要兩個子，不需要任何別的接應，而馬和炮又都是能活到殘局的子。而且馬一旦站好就很難防——馬從將夠不到的距離上罩着逃跑的點。

怎麼防馬後炮？

給將在九宮裡留一個空點，並且在炮到位*之前*就擋住那條線，而不是之後。士的位置在這裡很關鍵，見[士象的作用](https://xiangqimaster.com/zh-hant/endgames/advisors-and-elephants)。

## 相關內容

重炮

兩門炮疊在同一條線上

炮的走法

炮架規則為什麼讓這個殺法成立

基本殺法

值得背下來的那幾種殺

## 把馬後炮下出來

殺法是棋形，看十遍不如自己走一遍。免費殘局題與對弈。
