Hmmmm, liczba o 16 znakach to dość nieprecyzyjne określenie :] Jeżeli chodzi Ci o przechowanie 16 cyfr, każdą z osobna, to oczywiście zwykły łańcuch tekstowy, czyli STRING (chyba tak to w bascomie sie zwie).
Ale na stringach nie da się wykonywać operacji matematycznych na stringach (no dobra, da się, ale trzeba wszystko samemu od zera pisać :] ), operacje matematyczne wykonuje się na liczbach w formacie zmiennoprzecinkowym, w bascomie SINGLE i DOUBLE, podobnie w C, z tym że np. w AVR-GCC typ double jest traktowany tak samo jak single (czyli de facto typ double nie istnieje).
Inna sprawa - ze względu na ogromną pamięciożerność bascoma będziesz potrzebował conajmniej kilkunastu kB flasha, żeby upchnąć tam wszystkie funkcje. C pod tym względem jest o wiele bardziej wydajniejszy.
A co do ilości cyfr, to z typu single można "wycisnąć" tak około 7 cyfr - mantysa 23 bity + 1 bit ukryty daje max. 7 cyfr + kawałek ósmej.
Z formatu double - 52 bity mantysy + jeden bit ukryty daje 15 cyfr + prawie cała szesnasta.
Jeżeli chcesz zrobić kalkulator, to weź też pod uwagę fakt, że język programowania niekoniecznie musi obsługiwać wszystkie wyjątki przy działaniach na liczbach zmiennoprzecinkowych, np. po dzieleniu przez zero nie wywali błędu, tylko jakiś do niczego nieprzydatny wynik.
Równierz może nie być pełnej zgodności ze standardem (zazwyczaj nie ma, szczególnie jeśli chodzi o µC, gdzie każdy bajt się liczy) i w związku z tym np. po jakiejś operacji wynik może być np. zapisany w postaci nieznormalizowanej, czego efektem będzie większy błąd obliczeń.