Wanneer jy 'n nuwe programmeertaal leer, bv die arduino, jy kan altyd sien dat daar verskillende is datatipes om die veranderlikes en konstantes wat tydens die program hanteer kan word, te verklaar. Hierdie tipe data verskil in lengte en tipe na gelang van die taal of platform (argitektuur) waarvoor jy programmeer, alhoewel hulle in baie gevalle soortgelyk is.
In hierdie handleiding Jy sal kan leer wat hierdie tipe data is, hoeveel daar is, hoekom hulle verskil, ens. Op hierdie manier, wanneer jy bronkode skryf, sal jy 'n beter begrip hê van wat jy doen.
Wat is datatipes?
In rekenaars, datatipes Dit is eienskappe wat aandui oor die dataklas (ongetekende heelgetal, getekende getal, swaaipunt, alfanumeriese stringe, matrikse, ...) wat hanteer word. Dit impliseer ook sekere beperkings of beperkings met die data, aangesien hulle 'n reeks vorms en formaat moet respekteer. Hulle kan geen waarde neem nie, en kan hulle ook nie op enige manier verhandel nie.
As ons inklim die Arduino-saakHierdie ontwikkelingsbord is niks meer as 'n klein ingebedde rekenaar nie, met 'n MCU of mikrobeheerder wat bestaan uit 'n geheue, 'n SVE vir verwerking en 'n I/O-stelsel. In die SVE is daar 'n reeks berekeningseenhede, soos die ALU of rekenkundig-logiese eenheid, wat nie omgee watter tipe data dit is nie, want dit is bloot 'n kwessie van bewerkings met nulle en ene, maar op die kant Die sagteware maak wel saak, aangesien dit vir die gebruiker of vir die programmeerder nodig is om te weet waaroor dit gaan (selfs vir die behoorlike funksionering van die program, om oorstromings, kwesbaarhede, ens.) te vermy.
Datatipes in Arduino IDE
As jy reeds ons afgelaai het gratis Arduino-programmeringskursus, of as jy reeds programmeringskennis op hierdie platform of enige ander het, sal jy dit reeds weet daar is verskeie tipes data. Spesifiek, die programmeertaal wat deur Arduino gebruik word, is gebaseer op C ++, so in daardie sin is dit baie soortgelyk. Byvoorbeeld, die mees algemene is:
- boolean (8 bit): 'n Boole-data, dit wil sê, logies, en wat slegs 'n ware of onwaar waarde kan neem.
- byte (8 bis): kan van 00000000 tot 11111111 wees, dit wil sê van 0 tot 255 in desimale.
- wa (8-bis): Hierdie greep kan verskeie tipes karakters bevat, soos getekende nommers tussen -128 en +127, sowel as letters.
- ongetekende char (8-bis): dieselfde as greep.
- woord (16-bis): dit is 'n woord wat uit 2 grepe bestaan, en kan 'n ongetekende getal tussen 0 en 65535 wees.
- ongetekende (16-bis): 'n ongetekende heelgetal, soortgelyk aan woord.
- int (16-bis) - 'n Getekende heelgetal van -32768 tot +32767.
- lank ongeteken (32-bis): gebruik vier grepe vir groter lengte, en kan getalle tussen 0 en 4294967295 insluit.
- lank (32-bis): soortgelyk aan die vorige een, maar kan 'n teken insluit, so dit sal tussen -2147483648 en +2147483647 wees.
- dryf (32-bis): is 'n swaaipuntgetal, dit wil sê 'n getal met desimale tussen 3.4028235E38 en 3.4028235E38. Die Atmel Atmega328P-mikrobeheerder waarop Arduino gebaseer is, het beslis nie ondersteuning vir drywende puntgetalle nie en het 'n 8-bis limiet in sy argitektuur. Hulle kan egter gebruik word omdat die samesteller in staat is om kodereekse te genereer wat in staat is om dieselfde funksie te doen slegs deur die eenvoudige berekeningseenhede van die MCU te gebruik.
Daar kan ook wees ander tipes data meer kompleks, soos skikkings, wysers, teksstringe, ens.
Wees die eerste om te kommentaar lewer