The VEX Visual Studio Code Extension has replaced VEXcode Pro V5, which is now end-of-life.
VEXcode Blocks and VEXcode Text remain actively developed and supported for all VEX platforms.
പൂർണ്ണസംഖ്യകൾ ഉൾക്കൊള്ളുന്ന തരങ്ങൾ: char, short, int, long, long long
ചില ഉദാഹരണങ്ങൾ നോക്കാം:
char cvar = 50; char cvar = 50; ഷോർട്ട് svar = 50; int ivar = 50; നീളമുള്ള lvar1 = 50; നീളമുള്ള lvar2 = 50;
അടിസ്ഥാന ഗണിത ഓപ്പറേറ്റർമാർ:
മിക്കവർക്കും അടിസ്ഥാന ഗണിത ഓപ്പറേറ്ററുകളെക്കുറിച്ചും മുൻഗണനാ ക്രമത്തെക്കുറിച്ചും പരിചിതമാണ്: + , -, *, /
Unary ഓപ്പറേറ്റർ എങ്ങനെ ഉപയോഗിക്കാമെന്നതിന്റെ ചില ഉദാഹരണങ്ങൾ ഇതാ: ++ ഉം -- ഉം:
| എക്സ്പ്രഷൻ | തുല്യം | ഇതിനും തുല്യമാണ് |
|---|---|---|
| സിവിഎആർ += 5; | സിവിആർ = സിവിആർ + 5; | |
| ++സിവിഎആർ; | സിവിഎആർ++; | സിവിആർ = സിവിആർ + 1; |
| --സിവിഎആർ; | സിവിഎആർ--; | സിവിആർ = സിവിആർ - 1; |
++ വേരിയബിളിനെ ++ വേരിയബിളുമായി താരതമ്യം ചെയ്യുമ്പോൾ ശ്രദ്ധിക്കുക!
++വേരിയബിൾ
int x = 10, y = 20; X = ++y;
കുറിപ്പ്: ഈ പ്രവർത്തനത്തിന് ശേഷം: X = 21, Y = 21.
വേരിയബിൾ++
int x = 10, y = 20; X = y++;
കുറിപ്പ്: ഈ പ്രവർത്തനത്തിന് ശേഷം: X = 20, Y = 21.
പൂർണ്ണസംഖ്യ ഡാറ്റ തരം താരതമ്യം ചെയ്യുക
പോസിറ്റീവ്, നെഗറ്റീവ് മൂല്യങ്ങൾ അനുവദിക്കുന്ന ഒരു ഗ്രൂപ്പ് അല്ലെങ്കിൽ ഡാറ്റ തരം ഉണ്ട് - "ഒപ്പിട്ടത്." എന്നിരുന്നാലും, അത് അവ്യക്തമായതിനാൽ നിങ്ങൾ അത് വ്യക്തമാക്കേണ്ടതില്ല. താഴെ നോക്കുക:
| ഡാറ്റ തരം | ഏറ്റവും ചെറിയ മൂല്യം | ഏറ്റവും വലിയ മൂല്യം |
|---|---|---|
| പ്രതീകം | -2 7 അല്ലെങ്കിൽ -128 | 2 7 - 1 അല്ലെങ്കിൽ 127 |
| ചെറുത് | -2 15 അല്ലെങ്കിൽ -32,768 | 2 15 - 1 അല്ലെങ്കിൽ 32,767 |
| ഇന്റ് | -2 31 അല്ലെങ്കിൽ -2,147,483,648 | 2 31 – 1 അല്ലെങ്കിൽ 2,147,483,647 |
| നീളമുള്ള | -2 31 അല്ലെങ്കിൽ -2,147,483,648 | 2 31 – 1 അല്ലെങ്കിൽ 2,147,483,647 |
| വളരെക്കാലം | -2 63 അല്ലെങ്കിൽ -9,223,372,036,854,775,808 | 2 63 – 1 അല്ലെങ്കിൽ 9,223,372,036,854,775,807 |
പോസിറ്റീവ് മൂല്യം മാത്രം അനുവദിക്കുന്ന ഒരു ഗ്രൂപ്പ് അല്ലെങ്കിൽ ഡാറ്റ തരം ഉണ്ട് - "unsigned."
| ഡാറ്റ തരം | ഏറ്റവും ചെറിയ മൂല്യം | ഏറ്റവും വലിയ മൂല്യം |
|---|---|---|
| ഒപ്പിടാത്ത പ്രതീകം | 0 | 2 8 - 1 അല്ലെങ്കിൽ 255 |
| ഒപ്പിടാത്ത ഷോർട്ട് | 0 | 2 16 - 1 അല്ലെങ്കിൽ 65,535 |
| ഒപ്പിടാത്ത ഇന്റ് | 0 | 2 32 – 1 അല്ലെങ്കിൽ 4,294,967,295 |
| ഒപ്പിടാത്ത നീളമുള്ളത് | 0 | 2 32 – 1 അല്ലെങ്കിൽ 4,294,967,295 |
| ഒപ്പിടാത്ത ലോങ്ങ് ലോങ്ങ് | 0 | 2 64 – 1 അല്ലെങ്കിൽ 18,446,744,073,709,551,615 |
ഡാറ്റ വലുപ്പം നിങ്ങൾ എങ്ങനെയാണ് പരിശോധിക്കുന്നത്?
തൽക്കാലം, നിങ്ങൾക്ക് സൈസ് ഓഫ്( ) ഓപ്പറേറ്റർ അറിയണം. ഇത് “ബൈറ്റുകൾ” എന്ന് വിളിക്കുന്ന മെമ്മറി സ്റ്റോറേജ് യൂണിറ്റ് നൽകുന്നു - അടുത്ത വിഭാഗത്തിൽ ഇതിനെക്കുറിച്ച് അൽപ്പം ചർച്ച ചെയ്യും.
എത്ര ബൈറ്റുകൾ വേണമെന്ന് പറയാൻ സാമ്പിൾ sizeof()എന്ന ഓപ്പറേറ്റർ ഉപയോഗിച്ച് ടൈപ്പ് ചെയ്യണം. അവ സ്വയം പരിശോധിച്ചുറപ്പിക്കാൻ ഇത് പരീക്ഷിച്ചു നോക്കൂ. നിങ്ങൾ മറ്റൊരു കൺട്രോളറിലേക്ക് മാറുകയാണെങ്കിൽ, സ്ഥിരീകരിക്കാൻ നിങ്ങൾക്ക് എല്ലായ്പ്പോഴും ഇനിപ്പറയുന്നവ ചെയ്യാൻ കഴിയും.
Brain.Screen.setFont(fontType::mono30); Brain.Screen.printAt(1, 20,"char ന് %d bytes ഉണ്ട്", sizeof(char)); Brain.Screen.printAt(1, 50,"short ന് %d bytes ഉണ്ട്", sizeof(short)); Brain.Screen.printAt(1, 80,"int ന് %d bytes ഉണ്ട്", sizeof(int)); Brain.Screen.printAt(1, 110, "long has %d bytes", sizeof(long)); Brain.Screen.printAt(1, 140, "long has %d bytes", sizeof(long long)); Brain.Screen.printAt(1, 170, "float ന് %d bytes ഉണ്ട്", sizeof(float)); Brain.Screen.printAt(1, 200, "double has %d bytes", sizeof(double));
ഒരു ബൈറ്റ് എന്താണ് അർത്ഥമാക്കുന്നത്?
ഒരു "ബൈറ്റ്" എന്നത് ഡാറ്റ സംഭരണത്തിന്റെ ഒരു സാധാരണ യൂണിറ്റാണ്.
ഒരു ബൈറ്റ് = 8 ബിറ്റുകൾ. 1s ഉം 0s ഉം (ബൈനറി മൂല്യം) മാത്രമുള്ള ഏറ്റവും ചെറിയ മെമ്മറി യൂണിറ്റാണ് ഒരു ബിറ്റ്. പക്ഷേ, സിസ്റ്റത്തിൽ നിന്ന് നിങ്ങൾക്ക് നേടാൻ കഴിയുന്ന ഏറ്റവും ചെറിയ മെമ്മറി യൂണിറ്റ് 1 ബൈറ്റ് ആണ്; അതിനാൽ നിങ്ങൾക്ക് 1.5 ബൈറ്റ് മുതലായവ ആവശ്യപ്പെടാൻ കഴിയില്ല.
നമുക്ക് ചാർ നോക്കാം. എളുപ്പത്തിൽ പ്രദർശിപ്പിക്കാൻ കഴിയുന്നത്ര ചെറുതാണ് ഇത്.
അത് മുഴുവൻ 1s കൊണ്ട് നിറച്ചാൽ, നിങ്ങൾക്ക് 28-1 ലഭിക്കും. ഈ മൂല്യം “unsigned char” ന് ഉണ്ടായിരിക്കേണ്ട പരമാവധി മൂല്യമായിരിക്കണം.
നെഗറ്റീവ് മൂല്യം നൽകുന്നതിനായി സിസ്റ്റം ഉയർന്ന ഓർഡർ ബിറ്റ് കരുതിവച്ചിരിക്കുന്നു. അങ്ങനെ, ഒരു “ചാര” ത്തിന്റെ പരമാവധി മൂല്യം -128 മുതൽ 127 വരെയാണ്. എന്നിരുന്നാലും, ഡാറ്റ ശ്രേണിയിൽ വ്യത്യാസമുണ്ടെങ്കിലും ശേഷി ഇപ്പോഴും “അൺസൈൻഡ് ചാർ” പോലെ തന്നെയാണ്.
കമ്പ്യൂട്ടറിൽ, ഇത് ടുസ് കോംപ്ലിമെന്റ് എന്ന ഒരു പ്രവർത്തനം ഉപയോഗിക്കുന്നു. ഇത് ബിറ്റ്വൈസ് പ്രവർത്തനത്തിന് കീഴിലുള്ള വിഷയങ്ങളുടെ ഭാഗമാണ്, ഈ പ്രമാണത്തിന് ഇത് ബാധകമല്ല. ഈ വിഷയത്തെക്കുറിച്ചുള്ള കൂടുതൽ വിവരങ്ങൾ മറ്റൊരു രേഖയിൽ ചർച്ച ചെയ്യുന്നതാണ്.
char ഉം int ഉം തമ്മിലുള്ള വ്യത്യാസം എന്താണ്?
"char" ഉം "int" ഉം ഉപയോഗിക്കാവുന്ന ചില പൊതുവായ വാക്കുകൾ ഇതാ:
char var1 = '9'; int var2 = 9;
"char"-ൽ 'a', 'b', '9' തുടങ്ങിയ ചിഹ്നങ്ങൾ മാത്രമേ ഉൾക്കൊള്ളാൻ കഴിയൂ എന്നത് ഒരു പൊതു തെറ്റിദ്ധാരണയാണ്. അത് തെറ്റാണ്.
വാസ്തവത്തിൽ, "char" തരം "int" തരത്തിന് സമാനമാണ്, char ന്റെ ശേഷി 1 ബൈറ്റ് മാത്രമാണെന്നും int ന്റെ ശേഷി 4 ബൈറ്റുകളാണെന്നും ഒഴികെ. അതിനാൽ, ഡാറ്റ വലുപ്പ പരിധി രണ്ടിനുമിടയിൽ വ്യത്യസ്തമാണ്. മുകളിലുള്ള ഡാറ്റ ശ്രേണി പട്ടികയിൽ നിങ്ങൾക്ക് അത് കാണാൻ കഴിയും.
താഴെ പറയുന്ന കോഡ് സെഗ്മെന്റുകൾ char, int എന്നിവയെക്കുറിച്ച് കൂടുതൽ വ്യക്തമായ കാഴ്ച നൽകും.
int iX = '0'; char cX1 = 49; char cX2 = 50; Brain.Screen.printAt(3, 20, "int representation of '%c' = %d",iX, iX); Brain.Screen.printAt(3, 50, "int representation of '%c' = %d",cX1, cX1); Brain.Screen.printAt(3, 80, "int representation of '%c' = %d",cX2, cX2); Brain.Screen.printAt(3, 140, "So '%c' - '%c' = %d ",cX2, iX, cX2 - cX1);
ഔട്ട്പുട്ട്:
'0' ന്റെ int പ്രാതിനിധ്യം = 48 '1' ന്റെ int പ്രാതിനിധ്യം = 49 '2' ന്റെ int പ്രാതിനിധ്യം = 50 അതിനാൽ '2' – '0' = 1
നിങ്ങൾ ചിന്തിച്ചേക്കാം: '0' എന്തുകൊണ്ടാണ് 48 കാണിക്കുന്നത്?
ഇത് "ASCII കോഡ്" എന്ന വിഷയങ്ങളുടെ പരിവർത്തനത്തിലേക്ക് നയിക്കും. 1963-ൽ പ്രസിദ്ധീകരിച്ച ഒരു മികച്ച IEEE നാഴികക്കല്ലാണ് ASCII മാനദണ്ഡം. ഇത് ഈ ലേഖനത്തിന്റെ പരിധിക്കു പുറത്താണ്. ASCII കോഡ് പട്ടിക ഓൺലൈനിൽ നോക്കാൻ നിങ്ങളെ പ്രോത്സാഹിപ്പിക്കുന്നു. ASCII കോഡ് ടേബിളിനെക്കുറിച്ച് നിങ്ങൾക്ക് ഓൺലൈനിൽ ധാരാളം വിവരങ്ങൾ കണ്ടെത്താൻ കഴിയും.