دانلود کتاب ” آموزش زبان ماشین و اسمبلی “

دانلود کتاب ” آموزش زبان ماشین و اسمبلی ”




 

زبان اسمبلی(به انگلیسی: Assembly)‏ به مجموعه زبان‌های برنامه‌نویسی سطح پایینی اطلاق می‌شود که در آن مستقیماً دستورالعمل‌های پردازندهٔ اصلی (CPU) نوشته می‌شود ( یعنی دستوراتی که ALU توانایی انجام آنها را دارد.)به دلیل سطح پایین بودن این زبان‌ها، نوشتن، اشکال‌زدایی و نگهداری برنامه سخت‌تر است. برای هر خانوادۀ CPU یک زبان اسمبلی وجود دارد.این زبان به زبان مادر کامپیوتر بسیار نزدیک می‌باشد به‌طوری که تمامی برنامه‌های اولیه همچون ++C توسط زبان اسمبلی ساخته شده است و همچنین اکثر کارها در زمینۀ هک و مانند آن با این زبان انجام می‌شود. در زبان اسمبلی هر دستور زبان متناظر یک دستور باینری است. این زبان را با استفاده از اسمبلر‌ها می‌توان به زبان ماشین یعنی صفر و یک تبدیل کرد. نرم‌افزارهای اسمبلر بر روی سیستم نصب شده و با وارد کردن کدهای اسمبلی و اشکال‌زدایی کردن آن می‌توان آن‌ها را به زبان ماشین تبدیل کرد.


اسمبلر

اسمبلر یا همگذار نرم افزاری است که برنامه نوشته شده به زبان اسمبلی را به کدهدف (Object Code) تبدیل می کند و یک فایل با پسوند obj تولید می کند. توجه شود که این فایل قابل اجرا نیست و بوسیله نرم افزار Linker این فایل به یک فایل با پسوند exe تبدیل می‌شود که این فایل جدید قابل اجرا است.

اسمبلر های معروف برای معماری x86:

  • مایکروسافت اسمبلر (به انگلیسی: Microsoft Macro Assembler یا MASM) در ویندوز استفاده میگردد
  • جی‌اِن‌یو اسمبلر (به انگلیسی: Gnu Assembler یا GAS) در یونیکس استفاده میگردد
  • نت‌واید اسمبلر (به انگلیسی: Netwide Assembler یا NASM) در یونیکس استفاده میگردد
  • توربو اسمبلر (به انگلیسی: Turbo Assembler یا TASM) در داس و ویندوز استفاده میگردد

هر مجموعه دستورالعمل تعبیه شده در هر پردازنده‌ای، زبان اسمبلی مخصوص خود را دارا می‌باشد. لذا اگر دو نوع پردازنده که ISA (یا مجموعه دستورالعمل) آنها متفاوت از یکدیگر میباشد را داشته باشیم، نمیتوانیم با یک زبان اسمبلی (یا زبان همگذاری) یکسان برای آن دو، برنامه بنویسیم. برای مثال زبان اسمبلی معماری x86 با زبان اسمبلی معماری MIPS تفاوت دارد. (MIPS توسط شرکتهای مختلف مانند ایسر، ان‌ای‌سی، و تعدادی دیگر از شرکتها مورد استفاده قرار میگردد).

همچنین هر کد اسمبلی مخصوص همان اسمبلری است که با آن اصطلاحاً اسمبل شده است، بنابراین برای مثال یک کد اسمبلی پردازنده x86 نوشته برای اسمبلر GAS (جی‌اِن‌یو اسمبلر) نمیتواند با اسمبلر MASM (مایکروسافت اسمبلر) برای پردازنده x86 اسمبل شود.

اَسِمبلی ۶۴ بیتی ۳۲ بیتی و ۱۶ بیتی

در زبان اَسِمبلی با توجه به امکانات پردازنده و مقدار حافطهٔ آن از یک اسمبلر ۱۶، ۳۲، و یا ۶۴بیتی استفاده می‌شود.

  • در اَسِمبلی ۱۶ بیتی حافظه در ثبات‌های AX BX CX DX AH AL BH BL CH CL DH DL IP CS DS … قرار دارد.
  • در اَسِمبلی ۳۲ بیتی ثبات‌های EAX EBX ECX EDX EIP اضافه می‌شوند.
  • و در اَسِمبلی ۶۴ بیتی نیز ثبات‌های RAX RBX RCX RDX RIP اضافه می‌شوند.

حافظهٔ قابل دسترس در حالات فوق به ترتیب ۶۵۵۳۶، ۴۲۹۴۹۶۷۲۹۶ و ۱۸۴۴۶۷۴۴۰۷۳۷۰۹۵۵۱۶۱۶ بایت است.

نکته:

زبان اسمبلی را به دو صورت می توان پیاده سازی کرد یکی از طریق برنامه doc و دیگری با برنامه emu که این برنامه تحت ویندوز

می باشد و به صورت گرافیکی شما می توانید با این برنامه کار کنید



   دانلود فایل




کتاب الکترونیکی آموزش شبکه Network

شبکه گروهی از رایانه ها و دستگاه هایی می‌باشد که توسط کانال‌های ارتباطی به هم متصل شده اند. شبکه رایانه‌ای باعث تسهیل ارتباطات میان کاربران شده و اجازه می دهد کاربران منابع خود را به اشتراک بگذارند که سایت بزرگ دانلودها کتاب آموزش شبکه را در اختیار شما قرار داده تا نحوه راه اندازی و پیاده سازی شبکه ها را فرا بگیرید





دانلود