Google Play badge

binary နှင့်စက်ဘာသာစကား


Binary နှင့် Machine Language ကိုနားလည်ခြင်း။

ကွန်ပြူတာလောကသည် စွဲမက်ဖွယ်ကောင်းပြီး ဤကမ္ဘာ၏ အဓိကအချက်မှာ binary နှင့် machine language ဟူ၍ အရေးကြီးသော အယူအဆနှစ်ခုရှိသည်။ ဤသဘောတရားများသည် အပလီကေးရှင်းနှင့် စက်ပစ္စည်းတိုင်းကို အစွမ်းထက်စေရုံသာမက ကွန်ပြူတာများက ဒေတာကို မည်သို့လုပ်ဆောင်ပုံနှင့် ဒေတာနားလည်ပုံတို့ကို ဝင်းဒိုးတစ်ခုလည်း ပေးပါသည်။ ကွန်ပြူတာများ၏ အတွင်းပိုင်းလုပ်ဆောင်ချက်များကို ပိုမိုနားလည်သဘောပေါက်စေရန် ဤအကြောင်းအရာများကို စေ့စေ့စပ်စပ်လေ့လာကြည့်ကြပါစို့။

Binary ၏သဘောတရား

Binary သည် ကွန်ပျူတာများ၏ အခြေခံဘာသာစကားဖြစ်သည်။ ၎င်းသည် ဂဏန်းနှစ်လုံးသာအသုံးပြုသည့် အခြေခံ-2 ဂဏန်းစနစ်တစ်ခုဖြစ်သည်- 0 နှင့် 1။ ဒွိနံပါတ်တစ်ခုစီတွင် ဂဏန်းတစ်ခုစီကို တွက်ချက်ခြင်းတွင် ဒေတာ၏အသေးဆုံးယူနစ်ဖြစ်သည့် bit ဟုခေါ်သည်။

အဘယ်ကြောင့် binary? ကွန်ပျူတာများသည် ထရန်စစ္စတာဟုခေါ်သော အသေးစား အီလက်ထရွန်နစ် အစိတ်အပိုင်း သန်းပေါင်းများစွာကို အသုံးပြု၍ လုပ်ဆောင်သည်။ ထရန်စစ္စတာများသည် 1 သို့မဟုတ် 0 အသီးသီးကို ကိုယ်စားပြုသည့် 'ဖွင့်' သို့မဟုတ် 'ပိတ်' အခြေအနေတွင် ဖြစ်နိုင်သည်။ ၎င်းသည် binary ကို ကွန်ပျူတာများအတွက် သဘာဝဘာသာစကားတစ်ခု ဖြစ်စေသည်။

Binary နံပါတ်များကိုနားလည်ခြင်း။

ဒွိကိန်းစနစ်တွင်၊ ဒွိကိန်းတစ်ခုစီတွင် ရာထူးတစ်ခုစီသည် 2 ၏ပါဝါကို ကိုယ်စားပြုသည်၊ အနည်းဆုံးသိသာထင်ရှားသောဘစ် (ညာဘက်ဆုံး) ကိုကိုယ်စားပြုသည့် \(2^0\) ၊ နောက်တစ်ခုသည် \(2^1\) ကိုယ်စားပြုသည့် စသည်တို့ဖြစ်သည်။ ဥပမာအားဖြင့်၊ ဒွိနံပါတ် 1011 ကို ဒဿမ (ကျွန်ုပ်တို့၏ ပုံမှန်နံပါတ်စနစ်ဖြစ်သည့် အခြေခံ-10) တွင် အောက်ပါအတိုင်း ကူးပြောင်းနိုင်သည်-

\( 1 \times 2^3 + 0 \times 2^2 + 1 \times 2^1 + 1 \times 2^0 = 8 + 0 + 2 + 1 = 11 \)

၎င်းသည် ကိန်းဂဏန်းများမှ အက္ခရာများအထိ၊ ရှုပ်ထွေးသော မာလ်တီမီဒီယာဖိုင်များအထိ ဒေတာအမျိုးအစားအားလုံးကို သိမ်းဆည်းခြင်းနှင့် လုပ်ဆောင်ခြင်းအတွက် အခြေခံအဖြစ် တွက်ချက်ခြင်းအတွက် ဒွိနံပါတ်များသည် မည်ကဲ့သို့ အခြေခံဖြစ်ကြောင်း သရုပ်ဖော်သည်။

စက်ဘာသာစကားမိတ်ဆက်

binary သည် ကွန်ပျူတာများ၏ ဘာသာစကားဖြစ်သော်လည်း စက်ဘာသာစကားကို မူရင်းပရိုဂရမ်းမင်းဘာသာစကားဟု ယူဆနိုင်ပါသည်။ ၎င်းသည် လုပ်ဆောင်ချက်များကို လုပ်ဆောင်ရန်အတွက် ကွန်ပျူတာမှ ဖတ်ပြီး ဘာသာပြန်ပေးသော ဒွိဂဏန်းများ သို့မဟုတ် ဘစ်များစုစည်းမှုတစ်ခုဖြစ်သည်။ စက်ဘာသာစကားသည် ကွန်ပြူတာတစ်လုံးစီ၏ ဗိသုကာလက်ရာအတွက် သီးသန့်ဖြစ်ပြီး၊ ဆိုလိုသည်မှာ ကွန်ပြူတာအမျိုးအစားတစ်ခုအတွက် စက်ဘာသာစကားဖြင့် ရေးသားထားသော ပရိုဂရမ်သည် ပြုပြင်မွမ်းမံခြင်းမရှိဘဲ အခြားအမျိုးအစားတွင် အလုပ်လုပ်မည်မဟုတ်ပေ။

စက်ဘာသာစကားကို ကွန်ပျူတာ၏ CPU (Central Processing Unit) မှ နားလည်သော အခြေခံအကျဆုံး command များဖြစ်သည့် စက်ညွှန်ကြားချက်များဖြင့် ဖွဲ့စည်းထားသည်။ ဤလမ်းညွှန်ချက်များတွင် မှတ်ဉာဏ်တည်နေရာများကြား ဒေတာကို ရွှေ့ခြင်း၊ ဂဏန်းသင်္ချာဆိုင်ရာ လုပ်ဆောင်ချက်များကို လုပ်ဆောင်ခြင်းနှင့် ပရိုဂရမ်များ၏ လုပ်ဆောင်မှုစီးဆင်းမှုကို ထိန်းချုပ်ခြင်းကဲ့သို့သော လုပ်ဆောင်ချက်များ ပါဝင်နိုင်သည်။

Binary မှ စက်ဘာသာစကားသို့- ဥပမာတစ်ခု

binary နှင့် machine language တို့ အပြန်အလှန်အကျိုးသက်ရောက်ပုံကို ဥပမာပြရန် ရိုးရှင်းသောဥပမာတစ်ခုကို သုံးသပ်ကြည့်ကြပါစို့။ ကျွန်ုပ်တို့သည် ၎င်း၏ညွှန်ကြားချက်များအတွက် binary ကိုအသုံးပြုသည့် အလွန်ရိုးရှင်းသော (နှင့် ဟန်ချက်ညီသော) စက်တစ်ခုတွင် နံပါတ်နှစ်ခုဖြစ်သည့် 2 နှင့် 3 ကို ထည့်လိုသည်ဆိုပါစို့။

"add" အတွက် စက်ညွှန်ကြားချက်ကို ဒွိကိန်း 0001 အဖြစ် ကိုယ်စားပြုနိုင်သည်။ ဒွိကိန်း 2 နှင့် 3 သည် 0010 နှင့် 0011 အသီးသီးဖြစ်သည်။ ဤနံပါတ်နှစ်ခုပေါင်းထည့်ရန် စက်ဘာသာစကား ညွှန်ကြားချက်တစ်ခုလုံးသည် ဤကဲ့သို့သောပုံပေါက်နိုင်သည်-

\( \textrm{လည်ပတ်မှု (ထည့်ရန်)}: 0001 \ \textrm{Operand 1 (2)၊}: 0010 \ \textrm{Operand 2 (3)၊}: 0011 \ \)

CPU သည် ဤဒွိဂဏန်းများ၏ အတွဲလိုက်ကို ဖတ်သောအခါ၊ ၎င်းတို့ကို နံပါတ် 2 နှင့် 3 ပေါင်းထည့်ရန် ညွှန်ကြားချက်အဖြစ် အဓိပ္ပာယ်ဖွင့်ဆိုသည်။ ရလဒ် 5 ကို ဆက်လက်လုပ်ဆောင်ရန်အတွက် သိမ်းဆည်းထားမည် သို့မဟုတ် အသုံးပြုမည်ဖြစ်သည်။

အားသာချက်များနှင့် ကန့်သတ်ချက်များ

Binary နှင့် machine language သည် မြန်နှုန်းနှင့် ထိရောက်မှု အပါအဝင် အားသာချက်များစွာကို ပေးပါသည်။ ဤဘာသာစကားများသည် ကွန်ပြူတာ ဟာ့ဒ်ဝဲ၏ အခြေခံအကျဆုံး အဆင့်တွင် လည်ပတ်နေသောကြောင့် ၎င်းတို့သည် ကွန်ပျူတာ၏ အစိတ်အပိုင်းများကို လျင်မြန်ပြီး တိုက်ရိုက် ခြယ်လှယ်နိုင်စေပါသည်။

သို့သော် စက်ဘာသာစကားဖြင့် ပရိုဂရမ်ရေးခြင်းသည် အလွန်ရှုပ်ထွေးပြီး အမှားအယွင်းများတတ်သည်။ ၎င်းသည် မတူညီသော ကွန်ပြူတာဗိသုကာ အမျိုးအစားများကြားတွင်လည်း သယ်ဆောင်၍မရပါ။ ဤကန့်သတ်ချက်များကို ကိုင်တွယ်ဖြေရှင်းရန်အတွက် Python၊ Java နှင့် C++ ကဲ့သို့သော အဆင့်မြင့် ပရိုဂရမ်းမင်းဘာသာစကားများကို တီထွင်ခဲ့သည်။ ဤဘာသာစကားများသည် ပရိုဂရမ်မာများအား ကုဒ်ကို ပိုမိုလူသားဖတ်နိုင်သော ဖော်မတ်ဖြင့် ရေးသားနိုင်စေပြီး၊ ထို့နောက် ကွန်ပီလီများ သို့မဟုတ် စကားပြန်များက စက်ဘာသာစကားသို့ ပြန်ဆိုသည်။

နိဂုံး

Binary နှင့် machine language သည် computer operations များအားလုံးကို အခြေခံသည့် အခြေခံမူဘောင်ကို ပံ့ပိုးပေးကာ တွက်ချက်ခြင်း၏ဗဟိုချက်ဖြစ်သည်။ ဤအခြေခံသဘောတရားများကို နားလည်ခြင်းဖြင့် ကွန်ပျူတာများသည် ပရိုဂရမ်များကို မည်သို့လုပ်ဆောင်ပုံနှင့် အချက်အလက်ကို စီမံဆောင်ရွက်ပုံတို့ကို ထိုးထွင်းသိမြင်စေပါသည်။ ၎င်းတို့၏ ရှုပ်ထွေးမှုနှင့် အဆင့်မြင့်ဘာသာစကားများ ဖွံ့ဖြိုးတိုးတက်လာသော်လည်း၊ ကွန်ပြူတာသိပ္ပံနှင့် ပရိုဂရမ်းမင်းကို ပိုမိုနက်ရှိုင်းစွာ စူးစမ်းလိုသူတိုင်းအတွက် binary နှင့် machine language သည် မရှိမဖြစ်လိုအပ်ပါသည်။

Download Primer to continue