1942年,日本侵略者肆意踐踏中華大地,抗日將士奮勇抵抗,戰事正處于焦灼階段。
向海音是重慶中央大學心理學教師,她畢業于日本早稻田大學,她的未婚夫是數學系教授孔方,是一個數學,邏輯學的天才。這一天的早晨,向海音的鬧鐘像往常一樣響了很久,吵醒了隔壁的王老師,可是她都沒有醒,王老師使勁砸門才把睡眼惺忪的向海音叫醒,她長期失眠,只能靠安眠藥入睡。向海音立刻精神抖擻地來孔方的宿舍,還囑咐王老師不要把自己的遲到的事告訴孔方,就是不想他擔心,可是王老師根本沒有遵守諾言,轉身就透露給了孔方。
廣播里傳來一則戰事新聞,“八路軍某部獨立團在太行地區慈水縣與日軍精銳之師第136旅團展開激烈交戰,八路軍使用了剛剛研制出來的各式新型武器裝備,戰斗力突然激增,斃敵上百人,連續打退了敵人兩次進攻,但終因寡不敵眾,撤出了慈水縣”,孔方仔細聽完,不由地皺起了眉頭,他覺得這條新聞就不該播,首先慈水縣是他的家鄉,更讓他揪心的是敵人會根據新研制的武器這一條猜到附近有兵工廠,再根據具體參數和地圖數據就能算出具體的位置,他的弟弟孔圓連長帶隊就在兵工廠執行一項秘密任務,更何況136旅團的少將橫尾闊是日本著名的軍事專家,他熟讀《孫子兵法》,是一個中國通,孔方堅信他一定能精確地找到兵工廠的位置。
果然不出孔方所料,橫尾闊很快想到了兵工廠的位置,并派人去虎頭山勘測數據,他還盯上了那里的工人。橫尾闊和藤山喬裝改扮成中國百姓的樣子來到街上。橫尾闊看到孔記糧行的招牌,不禁對上面的書法,以及封條上的字贊不絕口,即刻帶藤山一起去尋找寫這些字的人。
孔方給學生們上課,可是外面炮火連天,他們無心學習,一心只想上前線打仗,保家衛國,孔方曉之以理動之以情,告訴他們這一切都與數學有關,同學們堅決不信,孔方利用數學知識,能精確算出下一次警報的時間,還能根據學生近兩月的生活數據準確策算出他今晚約會的地點和對象,同學們不禁對他刮目相看,懂得了學好數學同樣可以報效祖國。
警報響起的時候,同學和老師都紛紛躲進防空洞,只有孔方和向海音不慌不忙,鎮定自若,孔方有準確的數據做參考。
慈水縣孔記糧行的掌柜孔糧豐,膝下有兩個兒子孔方和孔圓,女兒孔融。日軍占領慈水縣之前,孔糧豐就在店鋪的門上貼上封條,聲明糧食已經賣完,日軍來到孔記,逼一個百姓帶路來到孔府,孔記的伙計青皮發現日軍的蹤跡,立刻跑回孔府報信,孔融立刻召集家里的傭人和伙計做好準備迎敵。
日軍闖進孔府,用槍威逼孔糧豐交出糧食,孔融女扮男裝進來送茶,被日軍抓走做人質,讓孔糧豐拿糧食來換人,并鳴槍示警。
就在這時,橫尾闊正好也來到孔府,制止了日軍少尉的無禮行為,向孔糧豐畢恭畢敬地行禮請教,得知字體都是孔融所寫,橫尾闊不禁贊不絕口,
孔糧豐向橫尾闊說明情況,他不想暴露出日本人的身份,只好先行離開,臨走悄悄命令日軍少尉把孔融放了,解除了空腹的危機。橫尾闊狠狠教訓了日軍少尉,然后徑直離開了。
天上的日軍戰機轟鳴而過,孔方和向海音也不躲避,竟然在鎮定自若地打乒乓球,孔方通過戰斗機的數量和材質分析出日本的氣數已盡,孔方特意搜集過橫尾闊的資料,斷定他們倆很快就會見面,向海音覺得他是中度強迫癥,突然,日軍的炸彈在他們身邊爆炸,兩個人趕忙躲進球臺下面,孔方警告向海音不許再吃安眠藥,向海音不想多做解釋,緊緊抱著他吻住了他的嘴,制止了空方的嘮叨。
向海音想讓醫生給她多開一些安眠藥,醫生擔心惹麻煩,堅決不給她開,向海音軟磨硬泡,醫生還是不松口,她也只好作罷。
橫尾闊派四個日軍假扮當地農民來虎頭山勘測數據,其中兩個人很快查到了兵工廠的位置,路上遇到偵察連的戰士,他們的斗笠暴露了身份,戰士立刻向孔圓報告,孔圓帶隊把那兩個日軍抓獲,其中一個試圖逃跑,被當場擊斃,孔圓把石田太郎生擒活捉,并且得知另外兩個日軍晚上十點在鳳凰破見面。
兵工廠譚震廠長提醒孔圓,應該早日向團部匯報,擔心兵工廠的位置已經暴露,他想等消滅另外兩個日軍以后再說。石田太郎絕食抗議,孔圓帶通訊員特意給他送來湯面,還對他好言相勸,石田太郎只好乖乖吃飯。
孔方擔心向海音再吃安眠藥,一直守在她的房間,向海音被逼無奈,只好把吃剩下的安眠藥交出來,孔方才肯離開,多虧向海音實現早有準備,她拿出另一瓶安眠藥吃下去。
孔圓在鳳凰破做了周密的安排,大嘴假扮石田太郎守株待兔等日軍的到來,沒想到被當場擊斃,等埋伏的八路軍反應過來,兩個日軍早已經逃之夭夭。
橫尾闊派出的測繪小組沒有及時歸隊,他立刻派一支特別小分隊進山摸清情況。與此同時,譚震再次向孔圓建議,馬上向團部匯報兵工廠的情況,他擔心一個特務連無法應對日軍一個隊的兵力,可是孔圓堅持虎頭山位置險要,易守難攻,更何況獨立團剛和日軍打了硬仗,撤回到慈水縣以北,遠水解不了近渴,譚震也無可奈何。
特務連的戰士在虎頭山巡邏的時候,遭遇日軍特別小分隊的埋伏,雙雙被擊斃,戰士們聽到槍聲,立刻趕來增援,不幸落入日軍的包圍圈,很快就全部犧牲,孔圓帶特務連的戰士們立刻做好戰斗準備,利用虎頭山的地形,神出鬼沒和日軍周旋。
日軍特別小分隊被打得措手不及,疲于迎戰,傷亡慘重,最后,井澤沒有子彈,跳崖逃走了。
橫尾闊派步兵支隊封鎖太行北線,阻斷獨立團前來增援,他決定在沒有地形圖的情況下,提前對虎頭山進行強攻,還要親自進山指揮,藤山勸他不要去冒險,可是橫尾闊堅持不入虎穴,焉得虎子。
孔圓得知增援的大部隊被阻隔,不能及時趕來,只能把武器彈藥就地隱藏,可是需要十二個小時的時間,孔圓做好了背水一戰的準備,決定堅守到譚廠長把武器彈藥隱藏好。
孔圓讓學武隱藏起來,做最后一道防線,讓陸達想辦法突圍出去,向團部匯報情況,譚震帶領工人們緊鑼密鼓地隱藏武器,還拿來鋪蓋卷,做出是工人宿舍的假象。
橫尾闊率隊來到虎頭山,命令部隊全力進攻,日軍的槍炮齊飛,陣地立刻變成了一片火海,孔圓率隊拼命抵抗,和日軍展開激戰,學武被炸進一個洞里。
天漸漸黑了下來,日軍突然發射毒氣彈,陣地上頓時濃煙滾滾,戰士們被毒暈了過去,孔圓也漸漸體力不支,暈倒了,日軍戴著防毒面具悄悄向陣地進攻,孔圓強打精神,被日軍俘虜,陸達偷換上日軍的服裝,僥幸活了下來。天亮的時候,日軍把戰士們的尸體焚燒掩埋,陸達躲在一邊見此情形,心痛到無法呼吸。
橫尾闊率隊來到兵工廠,把譚震廠長和工人們團團圍住,橫尾闊極力勸說譚廠長,可是他大義凜然,毫不畏懼,和橫尾闊據理力爭,譴責日軍的侵略本性,橫尾闊威逼工人們說出武器和機器藏匿的地點,否則格殺勿論,可是大家都沉默不語,拒不交代。譚廠長號召大家堅守秘密,決不能讓特務連的戰士們的血白流。
學武終于醒過來,他掙扎著從洞里爬出來,試圖爬上去,可是努力了幾次,都被重重摔下來,學武沿著洞口進去,看到里面有很多的頭骨。
陸達站在山上擊斃了日軍的兵工隊長,橫尾闊下令不許佩戴軍銜,不許行禮,以免被八路軍偷襲,還讓藤山致電馬格納,盡快啟程奔赴戰場。
向海音看到孔圓被俘的新聞,立刻告訴了孔方,他當即決定去孔圓的部隊看看,向海音也要一起去,孔方不想她去前線冒險,可是向海音卻一意孤行,孔方也只好同意,還讓她去設法搞定郵政飛機。
日軍對虎頭山展開地毯式搜查,陸達左躲右閃和他們周旋,很快被日軍追上來,陸達扔出來一個馬蜂窩,把日軍蟄得抱頭鼠竄,可是躲閃不及,全部暈倒在地,陸達繳獲了他們的槍支,順利脫身。
向海音假裝是軍統的特務,要去執行特殊的任務,她和孔方順利搭乘郵政飛機前往太行地區。