历史资料表明,到战国时期,我国的姓氏合一,姓已基本固定了。可是,如果遇到特殊情况,也会出现改姓现象。在古代社会中,改姓有以下几种情况
(1)赐姓。天子因官吏有功,往往赐姓以示褒扬。相传夏代帝孔甲有两条龙,有一人善于养龙,帝孔甲便赐他姓“御龙”。汉高祖刘邦因项伯效忠汉室,鸿门宴有救命之功,因赐项氏姓刘。唐初大将李勣,本姓徐,名世勣,字懋功,因战功卓著,唐太宗赐姓李。明末民族英雄郑成功收复台湾,功勋卓著,曾被南明隆武帝赐姓朱,因而闽台人民称郑成功为“国姓爷”。
封建帝王亦常出于政治需要,向异族首领赐以帝王之姓或他姓。如汉武帝赐匈奴休屠王的太子日弹姓金,金日弹以后成为西汉将军。唐帝赐党项羌族拓跋氏姓李氏,宋代党项羌立国为西夏,宋帝赐姓赵氏。
有时,“赐姓”并非用以褒扬,而是一种处罚。如齐武帝永明八年,萧子响因罪伏诛,因恶其叛逆,“赐姓为蛸氏”。刘宋武帝时因反抗朝廷而被杀的刘诞及其家族被“贬姓留氏”。唐武则天称帝后,将中宗皇后王氏改姓为蟒,高宗宠幸的萧良娣改姓为枭,又把起兵反对过她的李姓诸王改姓为虺,突厥可汗默啜改姓为斩啜。这种贬斥臣仆而赐姓,实际就与“赐死”一样。
(2)避讳。圣讳而改姓古人在言谈和书写时要避免封建帝王的名字,凡相同者必须回避更改,这就是所谓避圣讳。改时往往采用同音字或同义字。如籍氏避楚霸王项羽(名籍)讳,改为席氏;庆氏避汉安帝父讳改为贺氏;月宫恒娥因避汉文帝刘恒讳,改为嫦娥;弘氏因避唐高宗的太子李弘(死后被谥为孝敬皇帝)讳,改为洪氏因避圣讳而改姓的现象在古代是屡见不鲜的。