PDA

View Full Version : ثبات ها در سی



likable6
جمعه 16 بهمن 1383, 21:37 عصر
سلام به همه
یه مشکل کوچولدارم
میخام تو سی از اسمبلی استفاده کنم ولی هر کاری میکنم نمیشه
تمام مثالهای کتاب رو هم امتحان کردم ولی نشد(کتاب= اسمبلی آقای مزیدی)
اگه کسی نوشته منم رشاهنمایی کنه چه جوری میتونم به محتویات رجیستر ها دسترسی پیدا کنم و اونها رو عوض کنم

whitehat
شنبه 17 بهمن 1383, 01:29 صبح
به مثال زیر توجه کنید
<span dir=ltr>

union REGS in,out;
in.h.ah=0x10;
in.h.al=0x03;
in.h.bl=0;
int86&#40;0x10,&amp;in,&amp;out&#41;;</span>
(با این چند خط کد رنگهای چشمک زن را در C می توان خاموش کرد و تعداد رنگها را دو برابر نمود)
یک رکورد متغیر از رجیستر ها به صورت بالا تعریف کنید و رجیستر های خود را مقدار گذاری کنید .سپس می توانید از ان رجیستر ها به هر نحو استفاده کنید مثلا با آنها یک وقفه صدا بزنید. :wink:
موفق باشید

AsgharDasTala
شنبه 17 بهمن 1383, 09:33 صبح
کتاب c جعفرنژاد قومی در این مورد بسیار مفید است.
همچنین لینک زیر برای بدست آوردن interrupt ها مفید است:
http://www.htl-steyr.ac.at/~morg/pcinfo/hardware/interrupts/inte1at0.htm

likable6
شنبه 17 بهمن 1383, 21:45 عصر
سلام
از راهنمایی هاتون ممنون
whitehat عزیز من همین کد رو مینویسم و فرقی با هم نمی کنن
ولی از همون union REGS in,out; ایراد میگیره و می گه که اینها عضو های این یونیون نیستن
البته من &lt;dos.h> رو هم فراخونی کردم نمی دونم مشکل چیه اگه سورس کاملی که خودتون اجرا کرده باشین دارین لطفا به منم بدین چون ممکنه کامپایلر من ایراد داشته باشه؟؟؟!!!
اینم یه احتماله دیگه ::نوشتن::

likable6
شنبه 17 بهمن 1383, 22:02 عصر
البته کد مستقیم کار میکنه یعنی
asm mov ax,03
اما من می خوام از خود دستورات سی استفاده کنم

likable6
شنبه 17 بهمن 1383, 22:03 عصر
البته کد مستقیم کار میکنه یعنی
asm mov ax,03
اما من می خوام از خود دستورات سی استفاده کنم

whitehat
دوشنبه 19 بهمن 1383, 10:49 صبح
ولی از همون union REGS in,out; ایراد میگیره و می گه که اینها عضو های این یونیون نیستن
فکر کنم باید ctype را include کنید.
اگر درست نشد خبر دهید.
موفق باشید

likable6
دوشنبه 03 اسفند 1383, 22:35 عصر
سلام متاسفم که دیر اومدم
من این کار رو کردم ولی میگه یه همچین فایل هدر ی وجود نداره جایی هست بتونم دانلود کنم
از راهنمایی تون هم باز تشکر میکنم

armin390
چهارشنبه 19 اسفند 1383, 05:55 صبح
تو ویندوز 98 با یک کامپایلر تحت داس امتحان کن .

likable6
شنبه 22 اسفند 1383, 15:06 عصر
chashm in kar ro ham emtehan mikonam
mer30++

Pars Giga
یک شنبه 15 خرداد 1384, 09:25 صبح
:تشویق: