Vietinis kodas yra kompiuterio programavimo kodo forma, sukonfigūruota veikti naudojant nurodytą procesorių. Tiksli kodo struktūra yra nustatyta taip, kad atitiktų procesoriaus pateiktas instrukcijas. Visų tipų programinė įranga veikia su vietiniu kodu ir yra parašyta taip, kad veiktų optimaliai efektyviai su pasirinkto tipo procesoriumi arba su procesoriais, kurie pagaminti taip, kad atspindėtų nurodyto procesoriaus konfigūraciją.
Kadangi vietinis kodas yra parašytas taip, kad būtų užtikrintas visas funkcionalumas, kai paleidžiama sistemoje naudojant tam tikrus apdorojimo komponentus, pasirinkus paleisti programinę įrangą sistemoje be reikiamo procesoriaus, prieiga prie paketo funkcijų bus ribota. Kai kuriais atvejais programinė įranga gali visai neveikti.
Vienas iš būdų paleisti programinę įrangą naudojant nesuderinamą savąjį kodą yra naudoti tarpinį programinės įrangos paketą, vadinamą emuliatoriumi, kuris iš esmės konvertuoja procesoriaus signalus į duomenis, kuriuos kodas gali nuskaityti. Tačiau net naudojant pažangiausius emuliacijos kodo programinės įrangos paketus, pasiekiamas atsakas ir efektyvumo laipsnis yra mažesnis nei paleisti programą sistemoje, kurioje yra tinkamas procesorius. Dažnai geriausias pasirinkimas yra perrašyti kodą, kad jis prisitaikytų prie šiuo metu naudojamo procesoriaus.
Svarbu pažymėti, kad vietinis kodas skiriasi nuo vadinamojo baitinio kodo. Bytecode yra sukompiliuotas veikti virtualios mašinos režimu, kuris gali konvertuoti bendruosius baitinio kodo komponentus į labiau sutelktą vietinį kodą, kuris veiks su naudojamu procesoriumi. Nors baitinį kodą galima konvertuoti, neįmanoma atlikti veiksmo atvirkščiai ir naudoti šį metodą suderinamumui su svetimu procesoriumi pagerinti.
Gimtasis kodas randamas visų tipų programavimo aplinkose. Laikui bėgant, dažnis, kai jis netinkamai veikia su įvairiais procesoriais, pradėjo mažėti. Paprastai taip yra dėl to, kad skirtingi procesoriai vis dažniau sukonfigūruojami taip, kad veiktų su tų pačių tipų protokolais ir loginėmis sekomis.