En kodare (encoder) ( engelsk kodare ) är en logisk enhet som utför en logisk funktion (operation) - omvandling av en positionell n-bitars kod till en m-bit binär, ternär eller k-ary kod .
Den binära kodaren utför den logiska funktionen att omvandla en enhetlig n-är entydig kod till binär. När en signal appliceras på en av de n ingångarna (nödvändigtvis en, inte fler), visas den binära koden för numret på den aktiva ingången vid utgången.
där är antalet ingångar, är antalet utgångsbitar.
Den ternära kodaren utför den logiska funktionen att omvandla en unär n-är entydig (en-ett eller en-noll) kod till en ternär. När en signal ("1" i en en-enhetskod eller "0" i en ennollkod) appliceras på en av de n ingångarna, visas den ternära koden för det aktiva ingångsnumret vid utgången.
Antalet ingångar och utgångar i en full ternär givare är relaterat till relationen:
, där är antalet ingångar, är antalet utgående ternära siffror.
Om antalet ingångar är så stort att alla möjliga kombinationer av utsignaler används i kodaren, så kallas en sådan kodare komplett, om inte alla, så ofullständig.
Antalet in- och utgångar i en komplett k-ary-kodare är relaterat till förhållandet:
, där är antalet ingångar, är antalet utgående k-ary-bitar, är basen för talsystemet .
Prioritetskodaren skiljer sig från kodaren i närvaro av en ytterligare logisk krets för att välja den aktiva nivån för senioringången för att säkerställa villkoret för att kodaren ska fungera (endast en aktiv nivå vid ingången). Signalnivåer vid andra ingångar ignoreras av kretsen.