زبان اسمبلی یک زبان برنامهنویسی سطح پایین (Low-level Programming Language) است که دستوراتش معادل کدهای ماشین (Machine Code) هستند. به عبارت دیگر، مجموعهای از دستورات باینری (Binary) که مقادیری را به داخل رجیسترهای CPU (یا ریزپردازندههای دیگر) میریزند یا از آن برمیدارند. برخلاف اکثر زبانهای برنامه نویسی سطح بالا که (به واسطه کامپایلرها یا مفسرها) روی معماریهای کامپیوتری مختلف قابل استفاده میباشند هر زبان اسمبلی، به صورت ویژه برای یک نوع معماری کامپیوتر طراحی میشود. بنابراین برنامههایی که به این زبانها نوشته میشوند اصطلاحا پرتابل (قابل حمل) نیستند و برای اجرا شدن روی ماشینی با معماری متفاوت لازم است برای همان معماری مجددا نوشته شوند.