آدرس‌دهی بایتی

آدرس‌دهی بایتی (به انگلیسی: Byte addressing) معماری‌های سخت‌افزاری برمی‌گردد که از دسترسی به بایت‌های جداگانه پشتیبانی می‌کند. چنین رایانه‌هایی گاهی اوقات ماشین‌های بایتی نامیده می‌شوند. این برخلاف معماری‌های آدرس‌پذیر کلمه، ماشین‌های کلمه است، که به داده‌ها بر حسب واحدهای بزرگ‌تری به نام کلمات دسترسی دارند.
واحد اصلی ذخیره‌سازی دیجیتال بیت نامیده می‌شود که به صورت ۱ یا ۰ ذخیره می‌شود. بسیاری از معماری‌های رایج می‌توانند بیش از ۸ بیت داده را در هر زمان آدرس دهی کنند. به عنوان مثال، پردازندهٔ اینتل ۸۰۳۸۶ می‌تواند داده‌های ۱۶ بیتی (دو بایتی) را مدیریت کند، زیرا داده‌ها از طریق یک گذرگاه ۱۶ بیتی منتقل می‌شوند. با این حال داده‌های موجود در حافظه ممکن است دارای طول‌های مختلفی باشند. حافظه آدرس پذیر بایت به معماری‌هایی اشاره دارد که در آنها می‌توان به داده‌ها در واحدهایی باریکتر از گذرگاه دسترسی پیدا کرد و آدرس داد. یک پردازنده هشت بیتی مانند اینتل ۸۰۰۸ هشت بیت را آدرس دهی می‌کند، اما از آنجایی که این عرض کامل گذرگاه است، به عنوان آدرس پذیری کلمه در نظر گرفته می‌شود. پردازنده 386SX که حافظه را در واحدهای ۸ بیتی آدرس دهی می‌کند، اما می‌تواند آن را در ۱۶ بیت منتقل و ذخیره کند، بایت آدرس پذیر نامیده می‌شود.
مزیت آدرس دهی کلمه این است که حافظه بیشتری را می‌توان در همان تعداد بیت‌ها آدرس دهی کرد. IBM 7094 دارای آدرس‌های ۱۵ بیتی است، بنابراین می‌تواند ۳۲۷۶۸ کلمه ۳۶ بیتی را آدرس دهی کند. ماشین‌ها اغلب با یک مکمل کامل از حافظه آدرس پذیر ساخته می‌شدند. آدرس دهی ۳۲۷۶۸ بایت ۶ بیتی برای کاربران پژوهشی و مهندسی خیلی مفید نیست؛ مثلاً پردازندهٔ ۳۲ بیتی پنتیوم را در نظر بگیرید. گذرگاه آدرس ۳۲ بیتی آن می‌تواند ۴ میلیارد مورد مختلف را آدرس دهی کند. با استفاده از آدرس دهی کلمه، یک گذرگاه آدرس ۳۲ بیتی می‌تواند ۴ گیگاورد را آدرس دهی کند. یا ۱۶ گیگابایت را می‌توان با استفاده از گذرگاه آدرس ۸ بیت بایتی مدرن آدرس دهی کرد. اگر 386SX و جانشینان آن از آدرس دهی کلمه استفاده می‌کردند، دانشمندان، مهندسان و گیمرها همگی می‌توانستند از برنامه‌هایی که ۴ برابر بزرگتر در ماشین‌های ۳۲ بیتی هستند، لذت ببرند. سپس دوباره، پردازش کلمه، رندر اچ‌تی‌ام‌ال، و همه برنامه‌های متنی دیگر کندتر اجرا می‌شدند.
زمانی که رایانه‌ها آنقدر گران بودند که فقط یا عمدتاً برای علم و مهندسی استفاده می‌شدند، آدرس‌دهی کلمه‌ای روشی آشکار بود. با مقرون به صرفه شدن استفاده از رایانه برای مدیریت متن، طراحان سخت‌افزار به سمت آدرس دهی بایت متمایل شدند.
برای نشان دادن اینکه چرا آدرس دهی بایت مفید است، IBM 7094 را در نظر بگیرید که قابل آدرس دهی کلمه است و مفهومی از بایت را ندارد. دارای کلمات ۳۶ بیتی است و کدهای کاراکتری شش بیتی خود را شش تا یک کلمه ذخیره می‌کند. برای تغییر ۱۶امین کارکتر در یک رشته، برنامه باید تعیین کند که این چهارمین کاراکتر از کلمه سوم در رشته‌است، کلمه سوم را منتقل کند، مقدار قدیمی کاراکتر چهارم را از مقدار موجود در ثبات پنهان کند. «یا» در کلمه جدید، و سپس کلمه اصلاح شده را ذخیره کنید. حداقل شش دستورالعمل ماشین. معمولاً اینها به یک برنامه فرعی منتقل می‌شوند، بنابراین هر ذخیره یا انتقال یک کاراکتر مجزا شامل هزینه فراخوانی یک زیربرنامه و بازگشت است. با آدرس دهی بایت، می‌توان با یک دستورالعمل به آن دست یافت: این کد کاراکتر را در آن آدرس بایت ذخیره کنید. برنامه‌های متنی برای نوشتن راحت ترو کوچکتراند و سریعتر اجرا می‌شوند.
برخی از سیستم‌ها، مانند PDP-10، از آدرس‌دهی کلمه استفاده می‌کنند، اما دسترسی به بایت‌های جداگانه را با استفاده از دستورالعمل‌های خاصی تسهیل می‌کنند که می‌توانند با استفاده از یک اشاره‌گر بایت به حافظه دسترسی پیدا کنند، که هم آدرس کلمه و هم فهرست یک بایت خاص در کلمه را در بر می‌گیرد.