Ég er nýr í forritun. Hver er munurinn á 32-bita og 64-bita kerfum? Hvað þarf ég að hafa í huga þegar ég skrifa C ++ forrit?


svara 1:

Ekki er alltaf samið um hvað nákvæmlega táknar N-bitakerfi. Ég ímynda mér persónulega tölvukerfi þar sem alhliða CPU-skrár eru N-breiðar.

Til dæmis, önnur tölvan mín var með Motorola 68008 CPU: hún var með 32 bita skrár, en vann aðeins innbyrðis með 16 bita (hálfa skrá) og samskipti aðeins utan við minnið á 8 bitum í einu. Þrátt fyrir að vera hluti af 32 bita CPU fjölskyldu var það stundum vísað til sem 8/16/32 bita CPU. Samkvæmt minni skilgreiningu er það 32-bita CPU.

Intel i486 er einnig með 32 bita alhliða skrár, en einnig 80 bita fljótandi stigaskrár: enginn lítur á það sem 80 bita tölvu.

Þegar þú skrifar C ++ ertu yfirleitt varinn fyrir öllum þessum bitateljara en þær endurspeglast í stærð, stefnumörkun og sviði sumra grunngerða. Til dæmis er int venjulega 32 bita heiltala gerð og löng langa er næstum alltaf 64 bita heiltala gerð. Það fer eftir pallinum, það getur líka verið langt. Að auki eru ábendingar venjulega 4 bæti að lengd á 32 bita pöllum og 8 bæti að lengd á 64 bita pöllum (og þetta er oft helsti kosturinn við 64 bita kerfi yfir 32 bita kerfum: þeir geta stafað af eftirfarandi þáttum fleiri RAM-tölur breiðari ábendingar).