Tähemärkide kodeerimine on arvutiprogrammeerimises meetod või algoritm, mida kasutatakse märgi, glüüfi või sümboli tavaliselt numbrilise esituse leidmiseks. Märgikodeeringu kasutamine arvutites on vajalik, kuna arvuti mällu ja arvutiga loetaval kandjal olev teave salvestatakse bittide või numbrite jadadena. Selleks on vaja kasutada kodeeringut, et tõlkida kuvamiseks või inimloetavaks väljundiks kasutatavad mittenumbrilised märgid arvutiga manipuleeritavasse vormi. Spetsiifilisemas rakenduses saavad veebibrauserite loetavad hüperteksti märgistuskeele (HTML) dokumendid määratleda, millist tüüpi märgikodeeringut nad kasutavad, et anda brauserile teada, millist konkreetset märgikomplekti dokumendis teabe kuvamisel kasutada. Kasutusel on mitu kodeerimisskeemi, kuigi paljud neist patenteeritud ja pärandkomplektidest asendatakse aeglaselt Unicode®-i kodeerimisstandardiga.
Arvutite algusaegadel, kui mäluruum oli piiratud, salvestati ingliskeelse tähestiku põhimärgid, sealhulgas kirjavahemärgid ja numbrid, 7-bitistes jadades, mis võimaldasid 128 erinevat tähemärki. Selles algses skeemis esindas iga 7-bitine bait ühte inglise tähestiku tähemärki, mis on nummerdatud järjestikku. See märgikodeering oli tõhus ja lõpuks standardiseeriti ning seda kasutati enamikus toodetud arvutites. Kuigi kodeerimissüsteem arenes välja Unicode® kodeerimisstandardiks, jäi kontseptsioon samaks. Nimelt on iga tähemärk keeles otseselt seotud ühe numbriga suures standardses märgikomplektis ja seda numbrit kasutab arvuti märgi salvestamiseks, töötlemiseks ja indekseerimiseks.
Muud tüüpi märgikodeering töötati välja erinevatel põhjustel. Mõned, mis olid kohandatud spetsiaalselt ingliskeelsele tähestikule ja mõeldud kasutamiseks ainult teksti jaoks, vastendasid oma märgid 7-bitistesse jadadesse ja jaotasid need seejärel 8-bitiste baitide või oktettide vahel. Selle tulemusel säästeti 1 bitti okteti kohta, kasutades tihendamise tüübina tõhusalt märgikodeeringut. Teised kodeerimisskeemid püüdsid anda märgi kohta põhiteavet ja seejärel täiendavaid märke, et tähistada erilisi rõhumärke, mida saaks kasutada teises keeles kirjutamisel, kuigi need jäeti suures osas ära lihtsamate üks-ühele kodeerimismeetodite jaoks.
HTML-dokumentides on märgikodeering ligikaudu sama, mis laiem mõiste, välja arvatud see, et määratletav kodeering hõlmab tervet märkide komplekti. See võib olla oluline mitte ainult võõrkeelte, vaid ka selliste dokumentide puhul, mis kasutavad teaduse või matemaatika jaoks spetsiifilisi sümboleid, mida ei esine kõigis märgikomplektides. See võib olla kasulik ka kirjavahemärkide ja muude glüüfide kasutamisel, mida ei pruugi olla või mis on kodeerimisskeemides erinevalt kaardistatud. Dokumendid, mis ei määratle õigesti ebastandardset märgikodeeringut, võivad kuvada valesti või olla loetava teabe asemel täidetud mõttetute märkide ja kohahoidjatega.