PDA

View Full Version : سوال: دستور زیر یعنی چیه



mazaher5723
چهارشنبه 20 دی 1391, 23:45 عصر
سلام
این دستور یعنی چی؟
buffer db 10,?, 10 dup(' ')

the king
پنج شنبه 21 دی 1391, 06:31 صبح
سلام
این دستور یعنی چی؟
buffer db 10,?, 10 dup(' ')

یعنی یک آرایه 12 بایتی با اسم buffer (واحد بایت چون از DB استفاده شده) می خواهیم.
که بایت اول مقدارش 10 ئه (صریحا نوشته شده 10)، بایت دوم مقدارش مهم نیست (چون از ? استفاده شده) و
از بایت سوم به بعد با کاراکتر فاصله (مقدار ' ') پر بشه (DUP اگر بعد از مقداری بیاد، مقدار قبلی تعداد خانه ها است، نه مقدار خانه ها،
یعنی در این مثال 10 خانه با مقدار ' ' پر میشه)

معادل است با :


buffer DB 10, ?, ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' '


این مثال رو میشه در سطر های متوالی تفکیک کرد :


buffer DB 10
DB ?
DB 10 DUP (' ')


یا :


buffer DB 10
DB ?
DB ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' '