آخرین اخبار و مقالات و مطالب پیرامون زبان اسمبلی در ایران آی سی تی نیوز ، پایگاه فناوری اطلاعات و ارتباطات ایران

بر روی این دامنه اینترنتی

سیستم مدیریت محتوا

پارس

سی ام اس

نصب شده است که نرم افزاری قوی جهت

طراحی سایت

می باشد.

طراحی وب

با استفاده از

پرتال

(

پورتال

) پارس منجر به

طراحی وب سایت

شما می شود.

طراحی وب سایت

کپی رایت

پورتال

پارس

معماری مجموعه دستورات پردازنده

کامپیوتر با مجموعه دستورات پیچیده (cisc با تلفظ سیسک)، به معماری مجموعه دستورات ریزپردازنده ای اطلاق می شود که هر دستور به چندین دستور سطح پایین تر، مثل بارگزاری از حافظه، عملیات محاسباتی یا ذخیره در حافظه تقسیم می شود. این واژه را در مقابل واژه «کامپیوتر با مجموعه دستورات ساده شده ( riscبا تلفظ ریسک)» قرار داده اند. پیش از این که معماری ریسک همه گیر شود، بسیاری از معماران کامپیوتر در پی پرکردن خلا منطقی بین برنامه نویس و دستورات کامپیوتر بودند و به دنبال طراحی مجموعه دستوراتی از کامپیوتر بودند که مستقیما از ساختارهای زبان های سطح بالا، مثل فراخوانی زیربرنامه ها، کنترل حلقه ها و آدرس دهی های پیچیده پشتیبانی کند و دسترسی به ساختارهای داده و آرایه ها را با یک دستور آسان کند. طبیعت فشرده چنین مجموعه دستوراتی، کوچک تر شدن حجم برنامه و فراخوانی های کمتر به حافظه اصلی، که در آن زمان (اوایل دهه 60) منجر به صرفه جویی زیادی در مصرف حافظه کامپیوتر و دیسک می شد. همچنین میزان تولید برنامه ها به زبان اسمبلی، در غیاب زبان های سطح بالایی چون فورترن1 و یا الگول2 مفید بود. این که تمامی طراحی ها به میزان بهره وری بیشتر با هزینه کمتر می اندیشیدند و همچنین تعریف ساختارهای زبان های سطح بالاتر با دستورات کمتر، همیشه دغدغه معماران نبود. به عنوان مثال، نسخه های سطح پایین معماری پیچیده که از سخت افزار کمتری استفاده می کردند، به موقعیت هایی می رسیدند که در آن ها بازدهی سیستم هنگامی بالا می رفت که از دستورات پیچیده (فراخوانی زیربرنامه و...) استفاده نمی شد و از چند دستور ساده تر به جای آن استفاده می کردند. این نتیجه حاصل شد که معماران کامپیوتر، گاهی اوقات دستورات اسمبلر را «بیش از حد طراحی» می کردند که باعث می شد آن دستور در سخت افزار قابل پیاده سازی نباشد. عوارض جانبی این موضوع (که فراتر از استانداردها بود)، مثل مقداردهی به یک ثبات که اگر از طریق عادی این کار انجام می شد، اتلاف زمانی به فاصله چندین پالس ساعت رخ می داد. حتی در طراحی های با بازدهی بالا، این دستورات سطح بالا، با رمزگذاری های پیچیده همراه هستند و رمزگشایی این دستورات برای ترانزیستورهای ارزان تر غیرقابل انجام است. این معماری ها در بخش طراحی پردازنده، کار عظیمی را باید طی کنند که هر دستور سطح بالا، در مقابل چند دستور مشابه ساده تر، اما کندتر در جدول رمزگشایی ها یا صف ریزدستورات به صرفه خواهد بود یا خیر و در زمانی که فضایی که ترانزیستورها اشباع می کنند، فضای محدودی خواهد بود، در این صورت حفظ بازدهی به روش های دیگر ممکن نخواهد بود و نتیجه کار، به ساده تر کردن دستورات خواهد انجامید و این اتفاق به تولید کامپیوترها با معماری دستورات ساده شده در میانه های دهه 70 میلادی منجر شد. پردازنده های سیسک و ریسک پردازنده هایی که برمبنای معماری سیسک درست شده اند، را می توان در میان سری vax ، 11pdp- ، خانواده موتورولا 68000 و همچنین اینتل 86x یافت. البته در تکامل معماری های پردازنده ها، دیگر اختلاف میان سیسک و ریسک کمتر شده است. اولین پیاده سازی سطح بالای سیسک که در خانواده 486 اینتل، amd ، سایرکس و آی بی ام وجود داشت تمام دستورات این پردازنده ها را با پیاده سازی زیرمجموعه ای از این دستورات (به کمک معماری ریسک، اما بدون محدودیت های ذخیره بازیابی آن) اجرا و بازدهی بالایی را ارائه می کرد. پردازنده های جدیدتر 86x قادر به رمزگشایی دستورات پیچیده تر به ریزعملیات داخلی هستند که به طور سریال اجرا می شوند، با این وجود بازدهی بالایی دارند. کامپیوترهایی با معماری بدون مجموعه دستورات تفکر جدیدی که هم اکنون برای معماری مجموعه دستورات وجود دارد، کامپیوترهایی با معماری صفر دستورالعمل (zisc ، با تلفظ زیسک) است. این تفکر که از شبکه های عصبی مصنوعی3 و پردازش های بزرگ موازی4 نشات می گیرد، اوایل دهه نود و بر مبنای یک مدل شبکه عصبی که توسط پروفسور لیون کوپر5 شکل گرفت. در سال 93 در آزمایشگاه نیمه هادی های آی بی ام مورد بررسی قرار گرفت و نخستین چیپ این پردازنده به نام 36zisc توسط گای پیلت6 تولید شد. نخستین نسل از این پردازنده ها 36 سلول داشت و هر کدام به عنوان نرون7 عمل می کرد. هر کدام از این سلول ها می توانست ورودی برداری تا 64 بایت را مقایسه کند که در حافظه اش قرار داشت: اگر بردار ورودی8 با برداری که در حافظه اش یکی بود، برابر بود، سلول سیگنال می داد. سیگنال خروجی یا به معنای شناسایی الگو9 بود، یا نیافتن الگو. نکته اصلی سرعت بخشیدن به چنین سیستمی، پردازش موازی در سیستم های زیسک است که دیگر دردسر بارگزاری های سریال و خطی را ندارد و همزمان همه موقعیت ها را با هم چک می کند. گسترش پذیری این سیستم ها نیز جالب توجه است، یک سیستم زیسک می تواند با افزودن چیپ های بیشتر ، بیشتر شود بدون آن که با بزرگ شدن از بازدهی آن کاسته شود. پردازنده های امروزی زیسک حدود 78 نرون در هر چیپ دارند و می توانند در هر ثانیه یک میلیون الگو را مورد مطابقت قرار دهند و در کمتر از 50 مگاهرتز فعالیت کنند. در سال 2007، نسخه تکامل یافته زیسک78 به نام k1cognimem ارائه شد که تشخیص بردار 256 بایتی را در 10 میکروثانیه انجام می دهد. منابع http://en.wikipedia.org/wiki/zero_ instruction_set_computer http://cs.washington.edu/homes/ http://en.wikipedia.org/wiki/cisc lazowska/cra/risc.html پی نوشت ها: fortran.1 algol.2 artificial neural network.3 parallel processing.4 leon n. cooper.5 guy paillet.6 neuron.7 input vector.8 pattern recognition.9 المیرا حمیدی


برنامه نویسی به سبک پترس

... آنها یکسری دستورات به زبان اسمبلی می نویسند که در اصطلاح به آنها shellcode یا exploit گفته می شود ...

منبع : جام جم آنلاین    تاریخ : 18   بهمن   1388   شاخه : برنامه نویسی   


نرم افزار proteus professional v7.6

... این ابزار قدرتمند قادر است خود را با زبان های برنامه نویسی اسمبلی هماهنگ کرده تا مدارات مجتمع را همراه با زبان برنامه نویسی و همچنین ریز پردازنده مورد آزمایش قرار داد ... 6- سازگاری با انواع زبان های اسمبلی- سازگاری کامل با انواع میکروکنترولر ها- شناسایی و به روز رسانی آخرین قطعات و مدارات روز دنیا- هماهنگی کامل نرم افزار برای آزمایش کدهای نوشته شده در زبان اسمبلی - وجود بیش از 8000 قطعه الکترونیکی در نرم افزار- استفاده آسان از نرم افزار - امکان پرینت مدارات- قابلیت ذخیره سازی به صورت عکس- خطایاب بسیار کامل نرم افزار- سازگار با بیشتر کامپایلر ها و اسمبلرها ...

منبع : بازیاب    تاریخ : 2   دی   1388   شاخه : نرم افزار   


پیتر نورتون peter norton

... به عقیده پیتر نورتون، برنامه نویسی به زبان اسمبلی یکی از ضایعات غیرمعقول استعداد بشر است و هر زمان که ممکن است، باید از آن اجتناب شود ... وی و مجموعه تحت سرپرستی وی، کتاب های بسیاری را در زمینه های گوناگون فنی کامپیوتری و زبان های برنامه نویسی منتشر کرده است که بسیاری از آنها ابزار دست کاربران مبتدی و بسیاری دیگر راهنما و الگوی متخصصان و حرفه ای ها بوده است ...

منبع : جام جم آنلاین    تاریخ : 18   مرداد   1388   شاخه : اشخاص   


انتخابی به دور از تعصب

... پس از این که با نحوه کار کامپایلر و اجزای آن آشنا شدید، نوبت به آن می رسد که با یک زبان برنامه نویسی و یک کامپایلر به برنامه نویسی و تمرین بپردازید و به این ترتیب هر چه را که می خواهید رایانه برایتان انجام دهد، خودتان از او درخواست کنید ... زیرا این کار بسیار زمانبر و عملا غیرممکن است، اما می توان طرح ها، ایده ها و برنامه هایی را که معادل آنها تاکنون طراحی نشده است و یا نیاز ما را به شکل مطلوب پاسخ نمی دهند، خودمان با استفاده از یکی از همین زبان ها پیاده سازی کنیم و در کنار رفع نیاز کاربری، از این که خودمان به رایانه فرمان انجام کاری را داده ایم لذت ببریم ... اگر قصد آغاز برنامه نویسی را دارید توصیه می شود از یک زبان سطح بالا و ساده و در عین حال توانمند آغاز کنید تا علاوه بر این که بسادگی آن را فرا می گیرید، بتوانید از قدرت آن نیز در برنامه های خود بهره برده و نرم افزارهای کارا تولید کنید ... در پایان مطالعه این سری مقالات نمی توان گفت که شما می توانید با یک زبان خاص برنامه بنویسید ... انتخاب برحسب نیاز گاهی افراد به طور کامل نمی دانند که چه انتظاری از برنامه مورد نظر خود دارند و این آگاهی را ندارند که می خواهند با زبان برنامه نویسی به چه هدفی دست یابند و در نهایت چه نرم افزاری تولید کنند ... هنگامی که فرد هدف خود را از برنامه نویسی تعیین و انتظارات خود را از یک زبان مشخص کرد آن گاه از بین گستره وسیع زبان های برنامه نویسی، به یک مجموعه کوچک تری از زبان ها می رسد که می تواند با بررسی امکانات و توانایی های هر کدام از آنها با سرعت بیشتری به انتخاب نهایی خود برسد ...

منبع : جام جم آنلاین    تاریخ : 28   مهر   1387   شاخه : برنامه نویسی   


گام های نهایی برای یک ترجمه موفق

... همان طور که زبان های معمول از قواعد و اصول مشخصی پیروی می کنند، زبان های برنامه سازی نیز گرامر خاص خود را دارند که تنها در صورتی معنی و مفهوم آنها توسط رایانه درک می شود که از آن قواعد پیروی کرده باشیم ... البته زبان انسان ها به دلیل آن که مخاطب آن یک موجود هوشمند است، انعطاف پذیری بیشتری نسبت به زبان های برنامه نویسی رایانه دارند ... در زبان انسان ها ممکن است گاهی کلمه ای اشتباه گفته شود و یا فعلی بیان نشود ... اما در زبان رایانه باید کلمات و عبارات به ترتیب مشخص و تعیین شده توسط آن زبان کنار هم چیده شوند تا توسط رایانه درک شوند و کوچک ترین اشتباه و جابجایی در آنها غیرقابل چشم پوشی است و منجر به عدم درک مفهوم توسط رایانه خواهد شد ... مگر این که طراح زبان یک سری انعطاف پذیری های بخصوص، تعیین شده و محدودی را برای آن زبان در نظر گرفته و در کامپایلر آن بگنجاند ... در صورتی که این جمله به صورت «او صیب را خورده است» نوشته شود پیش از هر چیز تحلیلگر لغوی زبان فارسی پس از برخورد به کلمه «صیب» یک خطا اعلام می کند ... زیرا چنین کلمه ای در زبان فارسی وجود ندارد و باید به شکل «سیب» نوشته شود ... اما نحو زبان فاربسی به ما می گوید که برای فاعل «او» نباید از فعل «خورده ام» استفاده شود ... بنابراین تحلیلگر نحوی زبان فارسی از این جمله ایراد خواهد گرفت و ما ناچاریم یا کلمه «او» را به «من» و یا فعل «خورده ام» را به «خورده است» تغییر دهیم تا این جمله از نظر نحوی درست باشد، اما حالتی را در نظر بگیرید که جمله به «او میز را خورده است» تغییر کند ...

منبع : جام جم آنلاین    تاریخ : 21   مهر   1387   شاخه : برنامه نویسی   


دلفی، تجمع سادگی و توانایی

... علاقه مندان به زبان پاسکال امروزه کمتر با این زبان و کامپایلری چون turbo pascal برنامه نویسی می کنند ... می توان گفت که زبان پاسکال و ابزارهای کوچک مربوط به آن تنها محدود به آموزشگاه ها و واحدهای درسی شده است و کمتر جنبه کاربردی و تجاری دارند ... زیرا اولا سیستم عامل مربوط به پاسکال قدیمی، dos است که درحال حاضر دیگر کاربرد چندانی ندارد، ثانیا با امکانات امروز و انتظارات موجود از یک زبان برنامه نویسی، پاسکال قدیمی، دیگر نیازها را برآورده نمی سازد ... اشخاصی که با زبان پاسکال برنامه می نوشتند یا در حال حاضر قصد دارند از توانایی های این زبان بهره ببرند هم اکنون زبانی مثل دلفی را انتخاب می کنند که اولا بر پایه پاسکال طراحی شده است و ثانیا قابلیت های بسیاری دارد که زبان قدیمی پاسکال فاقد آنها است ... دلفی در سال 1995، شرک بورلند زبانی را تحت عنوان پاسکال شی ءگرا (object pascal) طراحی کرد و آن را در ابزاری به نام دلفی (delphi) به کار گرفت که بعدها به دلیل محبوبیت و معروفیت این ابزار، پاسکال شیء گرا نیز به زبان دلفی معروف شد و امروزه از دلفی به عنوان یک زبان یاد می شود ... دلفی یک زبان بصری(visual) است که در محیط ویندوز اجرا می شود و این قابلیت را دارد که برای ویندوز و dos برنامه تولید کند ... کاری که با زبان پاسکال نیاز به صرف ساعت ها و بلکه روزها زمان بود، دلفی تنها با چند کلیک آن را انجام می دهد ...

منبع : جام جم آنلاین    تاریخ : 31   شهریور   1387   شاخه : برنامه نویسی   


دوست مشترک شما و رایانه

... همان طور که می دانیم برای آن که یک برنامه نوشته شده به زبان های سطح بالا، در رایانه قابل اجرا باشند باید به زبان ماشین ترجمه شوند که این کار توسط دو دسته از نرم افزارها قابل انجام است ... هزاران زبان برنامه سازی با تنوع کاربرد و نحوه کار تاکنون طراحی شده است که بسیاری از آنها نیز به جای آن که زبان مبدا را به زبان ماشین تبدیل کنند، آن را به زبان دیگری تبدیل می کنند؛ اما صرف نظر از این تنوع، طرز کار کامپایلرهای آنها از یک سری قواعد و اصول واحد پیروی می کند و تنها تفاوت بین آنها در پیاده سازی و جزییات کار آنهاست ... پیش پردازشگر علاوه بر کامپایلر، چندین برنامه دیگر ممکن است برای ایجاد یک زبان مقصد قابل اجرا، لازم باشد ... این پیش پردازشگر ممکن است بخش های خلاصه شده ای را به احکام زبان مبدا تبدیل کند ... کامپایلر کد زبان اسمبلی تولید می کند که توسط اسمبلر به کد ماشین ترجمه شده و سپس با تعدادی روال کتابخانه ای ادغام شده و بعد به کدی تبدیل می شود که عملا روی ماشین قابل اجراست ... کامپایلر پس از انجام امور مربوط به کامپایل، در صورتی که با هیچ گونه خطای قابل تشخیصی مواجه نشد، کد زبان مقصد یعنی اسمبلی تولید می کند و آن را به عنوان ورودی به اسمبلر می سپارد و اسمبلر آن را به کد ماشین جابه جا پذیر تبدیل می کند ...

منبع : جام جم آنلاین    تاریخ : 31   شهریور   1387   شاخه : برنامه نویسی   


یک کامپایلر برای پاسکال

... اگر تصمیم دارید برنامه نویسی را با زبان پاسکال شروع کنید یک کامپایلر مناسب برای آن turbo pascal است که نسخه های قدیمی آن تحت سیستم عامل dos اجرا می شوند که البته به دلیل آن که این سیستم عامل امروزه کاربرد چندانی ندارد توصیه می شود از نسخه تحت ویندوز این کامپایلر استفاده کنید ... علاوه بر توربو پاسکال، کامپایلرهای جدید و قدیمی بسیاری برای این زبان وجود دارند که هر یک از جانب یک شرکت یا گروه پشتیبانی می شوند، اما یکی از جدیدترین، محبوب ترین و قدرتمندترین کامپایلرها برای پاسکال و پاسکال شیء گرا، free pascal است که در ادامه به معرفی برخی خصوصیات آن می پردازیم ... این نرم افزار نیز همانند توربور پاسکال و دلفی، پشتیبانی و سازگاری خوبی با زبان اسمبلی دارد ... به این معنی که برنامه نویس می تواند در بین کدهای برنامه خود به زبان پاسکال، به نوشتن قطعه برنامه ای به زبان اسمبلی کند ...

منبع : جام جم آنلاین    تاریخ : 24   شهریور   1387   شاخه : برنامه نویسی   


واسط های ما و رایانه ها

... به منظور اجرای برنامه های نوشته شده توسط برنامه نویس روی رایانه، یا باید مستقیما به زبان ماشین برنامه نوشت کاری که پیش از ابداع زبان ها در نخستین رایانه ها انجام می شد یا باید به وسیله یک نرم افزار، برنامه نوشته شده را به زبان قابل فهم رایانه تبدیل کرد ... با توجه به زبان برنامه نویسی و طریقه عملکرد برنامه مبدل، نام های مختلفی برای آنها در نظر گرفته شده است ... همان طور که پیش از این نیز گفتیم، اگر زبان برنامه نویسی، اسمبلی باشد، نرم افزاری که برای تبدیل متن برنامه به زبان ماشین به کار می رود، اسمبلر نام دارد ... اسمبلر از ابتدای برنامه شروع به خواندن می کند و پس از خواندن یک خط و تشخیص دستور مورد نظر، آن را به یک دستور زبان ماشین تبدیل می کند ... هر خط و دستور زبان اسمبلی، دقیقا معادل یک دستور زبان ماشین است ... البته ممکن است اسمبلر برای تبدیل کل برنامه به نمونه معادل زبان ماشین مجبور باشد دو بار برنامه را از ابتدا تا انتها مرور کند ... مفسر و کامپایلر مفسر یا interpreter در اصطلاح رایانه به نرم افزاری گفته می شود که برنامه نوشته شده به یک زبان برنامه نویسی را خط به خط خوانده و در همان لحظه اجرا می کند ... زبان هایی چون matlab, python, perl و ruby از جمله زبان هایی هستند که به روش دوم عمل می کنند ... زبان هایی مثل جاوا از این روش استفاده می کنند ...

منبع : جام جم آنلاین    تاریخ : 24   شهریور   1387   شاخه : برنامه نویسی   

صفحه 1
2 3


طراحی وب سایت

Content on this page requires a newer version of Adobe Flash Player.

Get Adobe Flash player