Prosím rozlišujte pojmy jednočipový mikrokontroler a jednočipový mikropočítač. On v tom JE značný rozdíl, tedy pro lidi co to programují. Mikrokontrolery (typicky pic12xxx, pic16xxx, ...) obecně nemají stack, případně ho mají jako zvláštní zcela oddělenou paměť, do které můžete přes push, pop, call, ret, no a nemáte přístupný stackpointer. Důsledkem je, že vám stack nemůže utéct do dat, všechno má ovšem svoji cenu - nejde napsat preemptivní multitasking například. Tedy nějak normálně. Navíc má stack hardwarem definovanou velikost. U jednočipových mikropočítačů (typicky x51,...)je normálně přístupný SP, což krom nesporných výhod má i nevýhody - chyba hardwaru ve vhodný moment pošle celý systém do pekel, no a těch šancí je u mikropočítačů (díky stacku v operační paměti) víc, takže se pak v problematických prostředích (nestabilní napájení, radiace, ...) jeví jako méně spolehlivé.
Pevný stack měly ze začátku i samostatné procesory, takové rozdělení je nepřesné.
Obecně jsou v dělení zmatky, jednočipový mikropočítač komunikuje s okolím pouze pomocí univerzální sběrnice, mikrokontrolér pomocí dodatečného hardware pro řízení okolního světa, jako třeba porty, USART, CAN, USB atd. Většina jednočipů jsou mikrokontroléry.