Assambleyada dasturlashni qanday boshlash kerak: 13 qadam (rasmlar bilan)

Mundarija:

Assambleyada dasturlashni qanday boshlash kerak: 13 qadam (rasmlar bilan)
Assambleyada dasturlashni qanday boshlash kerak: 13 qadam (rasmlar bilan)

Video: Assambleyada dasturlashni qanday boshlash kerak: 13 qadam (rasmlar bilan)

Video: Assambleyada dasturlashni qanday boshlash kerak: 13 qadam (rasmlar bilan)
Video: феникс ос установка андроид на пк 2024, Qadam tashlamoq
Anonim

Kompyuter dasturchilari o'z hunarlarini o'rganayotgan paytda montaj dasturlash ko'pincha hal qiluvchi boshlang'ich nuqtadir. Assambleya tili (ASM deb ham ataladi)-bu kompyuterlar va boshqa qurilmalar uchun dasturlash tili bo'lib, qo'shimcha funktsiyalarni taklif etuvchi rivojlangan tillar bilan taqqoslaganda, odatda past darajali variant hisoblanadi. Kodni yozganingizdan so'ng, montajchi uni mashina kodiga o'zgartiradi (1s va 0s). Protsessorlarning murakkabligi oshib borayotganligi sababli montaj dasturlari uchun ilovalar cheklangan bo'lsa-da, Assambleya bir qator maqsadlarda, shu jumladan, mustaqil bajariladigan fayllar yoki qurilma drayverlari uchun kod yozishda foydali bo'lib qolmoqda.

Qadamlar

3dan 1 qism: Assambleya tili bilan tanishish

Dasturlashni montajda boshlang 1 -qadam
Dasturlashni montajda boshlang 1 -qadam

Qadam 1. Assambleyaning tili haqida o'qing

Kod yozishga urinishdan oldin, avval tilni o'zi tushunish yaxshidir. Darsliklardan tortib onlayn qo'llanmalargacha bo'lgan bir qancha mavjud manbalar mavjud.

Dasturlashni montajdan boshlang 2 -qadam
Dasturlashni montajdan boshlang 2 -qadam

2 -qadam. Asosiy atamalarni bilib oling

Masalan, IDE (integratsiyalashgan ishlab chiqish muhiti) matnni tahrirlash, disk raskadrovka qilish va kompilyatsiya qilish kabi ishlarni bajaradigan kodlash interfeysini taqdim etishini bilishni xohlaysiz. Siz, shuningdek, "registrlar" dastur kodi bilan bog'liq raqamlarni saqlaydigan faktlar kabi, yig'ilishning aslida qanday ishlashini yaxshiroq tushunishni xohlashingiz mumkin. Terminologiyani yaxshiroq tushunish kod yozish jarayonini o'rganishni osonlashtiradi.

Dasturlashni montajdan boshlang 3 -qadam
Dasturlashni montajdan boshlang 3 -qadam

Qadam 3. Assambleyalar sizga mos keladimi -yo'qligini hal qiling

Esda tutingki, bir nechta dasturlash tillari mavjud, shu jumladan montajdan ko'ra ko'proq funktsiyalarni ta'minlaydigan. Shunday bo'lsa-da, telefon dasturlari va konditsionerlarni boshqarish tizimlari uchun mustaqil bajariladigan fayllarni yaratishdan tortib, protsessor uchun maxsus ko'rsatmalarni ishlab chiqarishgacha yig'ish foydali bo'lgan bir qator ilovalar mavjud.

Dasturlashni montajdan boshlang 4 -qadam
Dasturlashni montajdan boshlang 4 -qadam

Qadam 4. Qaysi montajchidan foydalanmoqchi ekanligingizni aniqlang

A86, NASM yoki GNU kabi montajchilar odatda kamroq murakkab funktsiyalarni bajaradilar va yangi boshlanuvchilar uchun mos boshlang'ich nuqtalar bo'lishi mumkin. Har bir montajchi biroz boshqacha ishlaydi, shuning uchun keyingi ko'rsatma siz Windows operatsion tizimlari bilan ishlaydigan asosiy assambleya MASM (Microsoft Macro Assembler) dan foydalangan holda ishlaydi. U x86 yig'ish tili va Intel sintaksisidan foydalanadi.

3 -qismning 2 -qismi: Assembler va IDE -ni yuklab olish va o'rnatish

Dasturlashni montajdan boshlang 5 -qadam
Dasturlashni montajdan boshlang 5 -qadam

Qadam 1. Assambleyani o'zi yuklab oling

Siz Visual Studio Enterprise 2015 -da mavjud bo'lgan MASM -ning so'nggi versiyasini (bir qator vositalarni o'z ichiga olgan keng qamrovli IDE), lekin asl nusxasini (MASM 8.0) topishingiz mumkin. MASM 8.0 bepul yuklab olish mumkin. E'tibor bering, Flat Assembler kabi ba'zi montajchilar Windows, DOS va Linux kabi bir nechta operatsion tizimlarda ishlatilishi mumkin. Boshqa montajchilar, jumladan Netwide Assembler (NASM) yoki GNU Assembler (GAS) Mac operatsion tizimlari bilan ishlaydi.

  • MASM 8.0 -ni yuklab olish uchun ushbu bosqichda ko'rsatilgan sahifaning yuqori qismidagi Yuklab olish tugmasini bosish kifoya.
  • Tizim talablari siz tanlagan montajchiga qarab o'zgaradi, lekin MASM 8.0 uchun Windows 2000 Service Pack 3, Windows Server 2003 yoki Windows XP Service Pack 2 talab qilinadi.
  • MASM 8.0 -ni o'rnatish uchun siz ilgari Visual C ++ 2005 Express Edition -ni yuklab olishingiz va o'rnatishingiz kerak bo'ladi.
Dasturlashni montajdan boshlang 6 -qadam
Dasturlashni montajdan boshlang 6 -qadam

Qadam 2. IDE -ni yuklab oling

Odatda "MASM" bilan yaxshi ishlaydigan WinAsm IDE -ni topish va o'rnatish uchun "WinAsm -ni yuklab olish" qidiruvini bajaring. Qaysi dasturlash tilidan foydalanayotganingizga qarab, boshqa IDElar mosroq bo'lishi mumkin. Eng mashhur variantlardan biri bu RadAsm.

Dasturlashni yig'ishda boshlang 7 -qadam
Dasturlashni yig'ishda boshlang 7 -qadam

3 -qadam. MASM 8.0 ni o'rnating

Dastur yuklab olingandan so'ng, "Ishga tushirish" tugmasini bosish orqali o'rnatishni boshlashingiz mumkin. Shu bilan bir qatorda, uni keyinroq o'rnatishni xohlashingiz mumkin, bu holda Saqlash -ni bosing. "Ishga tushirish" tugmachasini bosgandan so'ng, MASM 8.0 "[Visual C ++ Express] bin" katalogiga o'rnatiladi va ml.exe deb etiketlanadi.

Dasturlashni montajdan boshlang 8 -qadam
Dasturlashni montajdan boshlang 8 -qadam

Qadam 4. IDE -ni o'rnating

WinAsm yuklab olingandan so'ng, siz shunchaki fayllarni chiqarib, ularni "c: / program files \" jildiga ko'chirasiz. Siz ham osonroq kirish uchun ish stoliga yorliq qo'yishingiz mumkin.

Dasturlashni montajdan boshlang 9 -qadam
Dasturlashni montajdan boshlang 9 -qadam

Qadam 5. IDE -ni sozlang

Birinchidan, WinAsm dasturini ishga tushiring. Agar siz ish stoliga yorliq qo'ygan bo'lsangiz, uni ikki marta bosing. E'tibor bering, agar siz boshqa assembler yoki IDE dan foydalanayotgan bo'lsangiz, bu jarayon boshqacha bo'ladi.

Dasturlashni montajdan boshlang 10 -qadam
Dasturlashni montajdan boshlang 10 -qadam

Qadam 6. WinAsmni MASM 8.0 bilan birlashtirish

Ishni WinAsm asboblari yorlig'ini bosishdan boshlang, ushbu oynada "Variantlar" ni tanlang va nihoyat "Fayllar va yo'llar" yorlig'ini tanlang. Keyin MASM o'rnatish papkasidagi birinchi uchta yozuvni (yo'llarga havola) o'zgartiring. Ish tugagach, OK ni bosing.

"Fayllar va yo'llar" yorlig'i ostidagi ma'lumotlarni sozlashda, dastlabki uchta yozuv quyidagicha o'qilishi kerak. Ikkilik yo'l C: / Masm32 / Bin bo'lishi kerak; Include Path C: / Masm32 / Include bo'lishi kerak; va kutubxona yo'li C: / Masm32 / Bin bo'lishi kerak

3dan 3 qism: Kod yozish

Dasturlashni montajdan boshlang 11 -qadam
Dasturlashni montajdan boshlang 11 -qadam

Qadam 1. Kod yozishni boshlang

WinAsm -ni ishga tushirish va Fayl yorlig'ini bosishdan boshlang. Keyin "Yangi loyihalar" ni tanlang va siz bir nechta variantni ko'rasiz. Bu variantlarga Console Application va Standard EXE kiradi. Agar siz GUI (grafik foydalanuvchi interfeysi) ga asoslangan dastur yaratmoqchi bo'lsangiz, masalan, ikkinchisini tanlaysiz.

Dasturlashni montajdan boshlang 12 -qadam
Dasturlashni montajdan boshlang 12 -qadam

Qadam 2. O'rnatish dasturi tuzilmasidan foydalaning

Odatiy tuzilishga arxitekturani belgilaydigan chiziq, ma'lumotlar bo'limi (bo'lim ma'lumotlari), shu jumladan boshlangan ma'lumotlar yoki doimiylar, o'zgarmaydiganlarni e'lon qiladigan bss bo'limi (section.bss) va o'zingiz joylashtirgan matn bo'limi (section.text) kirishi mumkin. dastur kodi. Bu oxirgi bo'lim har doim global_start deklaratsiyasi bilan boshlanadi. Har bir ketma -ketlik kod bloki sifatida tanilgan.

Dasturlashni montajdan boshlang 13 -qadam
Dasturlashni montajdan boshlang 13 -qadam

3 -qadam. Asosiy buyruqlarni tushunish

O'rnatish tilida uchta turdagi bayonotlar mavjud: bajariladigan ko'rsatmalar yoki ko'rsatmalar (bu protsessorlarga operatsion kod orqali nima qilish kerakligini aytadi), montajchi ko'rsatmalari yoki psevdooplar (montajchilarga yig'ish jarayonlarini tavsiflaydi) va makroslar (ular matn sifatida xizmat qiladi) almashtirish mexanizmi).

Maslahatlar

  • Samarali kodni yig'ish tilida (yoki boshqa tilda) yozish, odatda, birmuncha o'rganishni talab qiladi. Ayniqsa, yig'ilish tili bayonotlari uchun kerakli sintaksisni va montaj dasturini qanday tuzish va bog'lashni o'rganishni xohlaysiz.
  • Agar siz ma'lum bir montajchini o'rnatishda qiyinchiliklarga duch kelsangiz, muayyan savollarga javob beradigan forumga qo'shilganingiz ma'qul.
  • Ba'zi dasturlash tillarida C va C ++ da ASM ("") funktsiyasi kabi yig'ilishni aralashtirish imkoniyatlari mavjud. Bu boshlash uchun yaxshi usul.
  • Agar siz yangi MASM versiyalari bilan ishlaydigan IDE bilan qiziqsangiz, Visual MASM -ni www.visualmasm.com/ saytida tekshiring.

Tavsiya: