পুরকৌশল
পুরকৌশল হল পেশাদার প্রকৌশল ব্যবস্থার একটি অন্যতম শাখা যেখানে নকশা, নির্মাণ কৌশল, বাস্তবিক বা প্রাকৃতিকভাবে গড়ে ওঠা পরিবেশের ব্যবস্থাপনা নিয়ে আলোচনা করা হয় যার মধ্যে সেতু, রাস্তা, পরিখা, বাঁধ, ভবন ইত্যাদি নির্মাণ অন্তর্ভুক্ত।মূলত পৃথিবীর সর্বত্র পুরকৌশলীদের কাজ রয়েছে। [1][2][3] সামরিক প্রকৌশল ব্যবস্থার পর পুরকৌশল হল সবচেয়ে পুরাতন প্রকৌশল ব্যবস্থা[4] এবং ইহা অসামরিক ও সামরিক প্রকৌশল ব্যবস্থার মধ্যে পার্থক্যকারী বিভাগ।[5] পুরকৌশলকে ঐতিহ্যগতভাবে বেশ কিছু উপ-শাখায় বিভক্ত করা হয় যেমন স্থাপত্য প্রকৌশল, পরিবেশ প্রকৌশল, জিওট্যাকনিক্যাল ইঞ্জিনিয়ারিং, ভূপ্রকৃতিবিদ্যা, ভুগণিত, নিয়ন্ত্রণ প্রকৌশল, স্ট্রাকচারাল ইঞ্জিনিয়ারিং, ভূমিকম্প প্রকৌশল, পরিবহন প্রকৌশল, পৃথিবী বিজ্ঞান, বায়ুমণ্ডলীয় বিজ্ঞান, ফরেনসিক প্রকৌশল, পৌর বা শহুরে প্রকৌশল, পানি সম্পদ প্রকৌশল, উপকরণ প্রকৌশল, উপকূলবর্তী ইঞ্জিনিয়ারিং, মহাকাশ প্রকৌশল, পরিমাণ জরিপ, উপকূলীয় প্রকৌশল,[4] মাপজোপ, পরিবেশবিজ্ঞান, ভূতত্ববিদ্যা, নগর ও অঞ্চল পরিকল্পনা, অবকাঠামো প্রকৌশল, বস্তুবিদ্যা, জলবিজ্ঞান, ভূমি জরিপ এবং নির্মাণ প্রকৌশল।[6] সরকারী-বেসরকারী সকল বিভাগেই পুরকৌশল সমানভাবে গুরুত্বপূর্ণ।
যান্ত্রিক ভাষা
বাইনারী সংখ্যা অর্থাৎ শুধুমাত্র 0 এবং 1 এর মাধ্যমে রচিত যে কম্পিউটার প্রোগ্রাম সরাসরি প্রথম প্রজন্মের ভাষা বলতে যান্ত্রিক ভাষাকে বোঝানো হয়। সেন্ট্রাল প্রসেসিং ইউনিট কর্তৃক নির্বাহিত হতে পারে তাকে যান্ত্রিক ভাষা বলে। কম্পিউটারে মৌলিক ভাষা বলতেই যান্ত্রিক ভাষাকে বোঝানো হয়। কম্পিউটারকে প্রদত্ত যে কোন নির্দেশনা যান্ত্রিক ভাষায় পরিবর্তন ব্যতীত নির্বাহ সম্ভব নয়। এ প্রেক্ষিতে এসেম্বলী ভাষা অথবা যে কোন উচ্চতর ভাষায় রচিত কম্পিউটার প্রোগ্রাম যান্ত্রিক ভাষায় রূপান্তরিত হবার মাধ্যমেই নির্বাহ করা হয়। যান্ত্রিক ভাষায় রচিত প্রোগ্রামকে অবজেক্ট প্রোগ্রাম (Object Program) এবং অন্যভাষায় রচিত প্রোগ্রামকে উৎস প্রোগ্রাম (Source Program) বলা হয়। 
কম্পিউটারের প্রোগ্রামিং ভাষার সূচনাতে বাইনারী কোডের মাধ্যমে এই যান্ত্রিক ভাষায় কম্পিউটারকে নির্দেশনা প্রদান করা হলেও এই প্রক্রিয়াটি ছিলো অত্যন্ত কষ্টকর, সময়সাপেক্ষ, ও ত্রুটিপূর্ণ। বাইনারী সংখ্যা মনে রাখা যেহেতু অনেকটা অসম্ভব, সেহেতু প্রোগ্রামিং এর ত্রুটির সম্ভাবনাও বেশি ছিল এবং ত্রুটি সনাক্তকরণও ছিলো অসম্ভব। 
মেশিন ভাষা এবং এসেম্বলী ভাষা যন্ত্রনির্ভর। অর্থাৎ, এক কোম্পানির কম্পিউটারের জন্য মেশিন ভাষা বা মেশিন নির্দেশ ও এসেম্বলী নির্দেশ এক নাও হতে পারে। 
উদাহরণস্বরূপ মেশিন কোড 00000101 দ্বারা সিপিইউ এর নামের প্রসেসর রেজিস্টার এর মান একক হ্রাস করার নির্দেশনা প্রদান করা হয়, যেটি এসেম্বলী ভাষায় DEC B নির্দেশের মাধ্যমে নির্দেশিত হয়। 
সাধারণত যান্ত্রিক ভাষার নির্দেশ অপারেশন কোড ফিল্ড, J-type (jump), I-type (immediate), R-type (register) এবং function এর সমন্বয়ে গঠিত হতে পারে। MIPS (32 Bit) আর্কিটেকচার অনুযায়ী register 1 এবং register 2 এ বিদ্যমান মান যোগ করে register 6 এ স্থাপনের জন্য মেশিন ভাষায় 000000 00001 00010 00110 00000 100000 নির্দেশ ব্যবহৃত হয়। 
রেজিস্টার register 3 এ যে মান বিদ্যমান রয়েছে সেটি থেকে থেকে 68 মেমরী সেল (Memory Cell) দূরতে বিদ্যমান মেমরী সেলে রক্ষিত মানটিকে register 8 এ load (সঞ্চালন) করার জন্য মেশিন ভাষায় 100011 00011 01000 00000 00001 000100 নির্দেশ প্রদান করা হয়। মেমরীর 1024 এড্রেসে Jump করার জন্য ব্যবহৃত মেশিন কোড হল 000010 00000 00000 00000 10000 000000। 
মেশিন ভাষা এবং এসেম্বলী ভাষায় প্রদত্ত নির্দেশগুলিকে মূলত চারটি ভাগে ভাগ করা যায়- 