در این آموزش های قبلی دربارهء مکمل۲ در زبان اسمبلی صحبت کردیم در این آموزش می خواهیم محاسبات در مکمل۲ در زبان اسمبلی را برایتان شرح دهیم.برای این منظور ابتدا به مبحث کدگذاری ASCII می پردازیم.
کدگذاری ASCII
کد گذاری ASCII (American Standard Code for Information Interchange) به حروف، ارقام، علائم و کاراکترهای مختلف یک عدد باینری ۷ بیتی نسبت می دهد و هشتمین بیت را ۰ درنظر می گیرد. به این صورت هر کاراکتر یک بایت را اشغال می کند.
روشن است که این روش برای نمایش اعداد مناسب نیست، چون در فرمت باینری یک بایت اعداد ۰ تا ۲۵۵ را نمایش می دهد، اما با کد ASCII یک بایت تنها برای نمایش یک رقم کافی است. به همین دلیل کلا این روش برای نمایش متن در حافظه استفاده می شود.
مثال. نمایش عدد ۱۲۳ با دو فرمت ASCII و باینری
نوع توسعه یافته این سیستم شامل ۸ بیت برای هر کاراکتر است و ۲۵۶ حالت مختلف را شامل می شود. کدهای ۰ تا ۱۲۷ برای کاراکترهای استاندارد، کدهای کنترلی و ارتباطی و مقادیر ۱۲۸ تا ۲۵۵ برای نمایش سمبل های گرافیکی و حروف یونانی هستند.
مثال. رشته “ABC123” به صورت ۴۱h 42h 43h 30h 31h 32h نشان داده می شود.
یک کدگذاری کامل تر که جای ASCII را دارد می گیرد Unicode است. تفاوت کلیدی بین این دو نوع کدگذاری در این است که ASCII یک بایت را برای کدکردن یک کاراکتر استفاده می کند در حالیکه Unicode برای هر کاراکتر دو بایت را درنظر می گیرد. بنابراین کاراکترهای بیشتری را می تواند نمایش دهد که این برای نمایش کاراکترهای کلیه زبان های دنیا کاربردی است.
مثال. کدگذاری ASCII کد ۴۱h یا ۶۵ را به کاراکتر A می دهد. کدگذاری Unicode کد ۰۰۴۱h هگز را می دهد.
نکته۱٫ تفاوت یک حرف بزرگ با یک حرف کوچک تنها در بیت شماره ۵ است؛ این بیت در حروف بزرگ ۰ و در حروف کوچک ۱ است. (“m”= 01101101 و “M”= 01001101)
نکته۲٫ ارقام ۰ تا ۹ کدهای ۳۰h تا ۳۹h را دارا می باشند.
نکته۳٫ کاراکترهای قابل چاپ بین ۲۰h تا ۷Eh است.
نکته۴٫ کاراکترهای ۰ تا ۱Fh و ۷Fh کاراکترهای کنترلی نام دارند که قابل رویت نمی باشند.
نکته۵٫ کاراکتر ESC با کد ۱Bh همراه با کاراکترهای دیگر اغلب برای یک عمل خاص به دستگاه های جانبی ارسال می شود.
نکته۶٫ کدهای ۴۱ تا ۵Ah کاراکترهای A تا Z و کدهای ۶۱ تا ۷Ah کاراکترهای a تا z هستند.
نکته۷٫ کاراکتر CR و LF با کدهای ۰Dh و ۰Ah به ترتیب باعث حرکت مکان نما به شروع خط جاری و خط بعد می شود.