اینو دیدی

مرجع دانلود فایل ,تحقیق , پروژه , پایان نامه , فایل فلش گوشی

اینو دیدی

مرجع دانلود فایل ,تحقیق , پروژه , پایان نامه , فایل فلش گوشی

تحقیق درباره اسمبلی

اختصاصی از اینو دیدی تحقیق درباره اسمبلی دانلود با لینک مستقیم و پر سرعت .

لینک دانلود و خرید پایین توضیحات

فرمت فایل word  و قابل ویرایش و پرینت

تعداد صفحات: 114

 

آموزش اسمبلی

برای یاد گرفتن اسمبلی باید با مبناهای عدد نویسی ، ساختمان داخلی کامپیوتر و برنامه نویسی آشنا باشیم . ما برنامه هایمان را مستقیما با اسمبلر Macro Assembler خواهیم نوشت و گاها از Debugاستفاده خواهیم کرد . بعلاوه چون برنامه های حجیم نخواهیم نوشت قالب اکثر رنامه های ما COM. خواهد بود . برای شروع ابتدا نگاهی به حافظه میکنیم : حافظه و آدرس دهی هر کامپیوتر مبتنی بر 8086 دارای حداقل 640 کیلوبایت حافظه است . این 640 کیلوبایت به قطعات 64 کیلوبایتی تقسیم شده و ما این قطعات را "قطعه " یا Segmentمینامیم . هر سگمنت هم به خانه های تک بایتی دیگری تقسیم شده است . برای بدست آوردن مقدار یک بایت مشخص از حافظه ما باید عد مربوط به سگمنت و همچنین شماره آن بایت در سگمنت ( که آفست Offset نامیده میشود ) را بدانیم . مثلا اگر مقدار مورد نظر در قطعه 0030h(h( یعنی عدد در مبنای 16 است ) و آفست 13C4hباشد ما باید قطعه ای که شماره آن 0030h است را بیابیم و بعد در همان قطعه مقدار باین شماره 13C4 را بخوانیم . برای نمایش این حالت بین عدد سگمنت و آفست علامت (:) قرار میدهیم . یعنی ابتدا عدد مربوط به قطعه را نوشته و سپس عدد آفست را می آوریم : Segment:Offset مثال : 4D2F:َ9000 **همیشه در آدرس دهی ها از اعداد مبنای 16 استفاده میکنیم . | | | | CConvertional | 1 Segment=64K | | | | | Memory | | | | | | | | | | | | | | ثباتها Registers رجیسترها مکان هائی از CPU هستند که برای نگهداری داده ها (DATA) و کنترل اجرای برنامه بکار میروند . ما میتوانیم آنها را مقدار دهی کرده و یا بخوانیم و یا باتغییر محتوای آنها CPU را مجبور به انجام یک پروسه (رویه یا Procedure) کنیم دسته ای از رجیسترها که ما انها را "ثباتهای همه کاره یا همه منظوره " میخوانیم و شامل AX/BX/CX/DX هستند ، برای انتقال مقادیر بین رجیستر ها و CPU بکار میروند.این ثباتها را میتوانیم به هر نحوی تغییر دهیم و مقادیری را به آنهاارسال کنیم . ثباتهای دیگری هم که نام میبریم کاربردهای خاص خودشان را دارند و برای مقدار دهی آنها باید قواعد خاصی (که توضیح خواهیم داد) را بکار بریم . میکند عدد که در این ثبات وجود دارد شماره یک قطعه است و CPU برای یافتن DS : مخفف Data Segment . محل نگهداری متغییرها و ثابتهای برنامه را مشخص مقادیر لازم به آن قطعه مراجعه میکند . CS: مخفف Code Segment است و آدرس قطعه ای که برنامه در آن قرار گرفته را نشان میدهد . ES: این یک ثبات کمکی است و معمولا در آدرس دهی ها شماره قطعه را نگهداری میکند . DIDataIndex:Dبا DS/ESا مرتبط است و عدد آفست را نگهداری میکند . IP: این رجیستر معلوم میکند که برنامه در حال اجرائی که در CS قرار دارد از کدام بایت قطقه (یعنی کدام آفست ) شروع میشود . به همین دلیل همیشه این دو ثبات را با هم و بصورت CS:IP نشان میدهند. و ... تمام رجیسترهای فوق 16 بیتی (دوبایتی ) هستند و اعداد دوبایتی را نگهداری میکنند. ثباتهای همه منظوره به دو نیم ثبات تک بایتی تقسیم میشوند . بایت بالائی ب نماد H و بایت پائینی با نماد L نشان داده میشود . مثلا ثبات AX دارای دو نیم - ثبات AH/AL است : | AH - 8 Bit | AL -8 Bit | تمرین : برای دیدن رجیسترها در DOS، DEBUG، را اجرا کنید و فرمان R را صادر کنید : D:\MASM>DEBUG-RAX=0000 BX=0000 CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000DS=17AA ES=17AA SS=17AA CS=17AA IP=0100 NV UP EI PL NZ NA PO NC17AA:0100 0F

بیایید یک برنامه بنویسیم

در این قسمت میخواهیم با استفاده از مطالبی که در بخشهای قبلی یاد گرفتیم برنامه ای بنویسیم که کامل و قابل استفاده باشد . با این برنامه میتوانیم فلاپی دیسکهای خودمان را با سرعت کپی کنیم ! امروز برنامه را به شکلی مینویسیم که بتواند دیسکهای 1.44 را بوسیله درایو A کپی کند . بیشتر نیاز ما در کپی (تکثیر) دیسکها هم به همین شکل هست . با اینحال در قسمت بعدی نگارش (Version) جدیدتری از برنامه را مینویسیم و قابلیت تشخیص نوع دیسک و قابلیت مشخص کردن درایو را به آن اضافه میکنیم . بهترین کاری که میتوانیم بکنیم اینست که بتوانیم داده های خوانده شده از دیسک را در حافظه EMS بنویسیم (در این نسخه روی هارددیسک مینویسیم ) . وقتی که نحوه کار را حافظه گسترش یافته (Extended Memory) را هم یاد گرفتیم ، برنامه خود را کامل کرده و از آن بعنوان اولین دستختمان در برنامه نویسی اسمبلی لذت میبریم . لیست برنامه در زیر قرار دارد و توضیحات برنامه را روی آن میبینیم قبل از آن یاد آوری میکنم که هر دیسک HD َ1.44 دارای دو طرف و در هر طرف 80 شیار (Track) بوده و هر شیار هم به 18 بخش بنام قطاع (Sector) تقسیم میشود . برنامه ما باید محتوای تمام این قطاعها را خوانده و در فایلی روی دیسک سخت ذخیره کند. سپس همین داده ها را از فایل خوانده و مجددا روی دیسک جدید بنویسد. طول هر قطاع 512 بایت است EQU 512 SECTORSIZEتعداد شیار ها 80 شیار (79- 0-) است EQU 79 MAXTRACKهر دیسک دو طرف دارد EQU 2 NUMSIDESتعداد سکتور در هر شیار 18 تا است EQU 118 SECTOR_PER_TRACK E.MODEL SMALL.CODEORG 100HSTART:JMP MAINبافر برای ذخیره (0)BUF DB SECTORSIZE*SECTOR_PER_TRACK DUP


دانلود با لینک مستقیم


تحقیق درباره اسمبلی

تحقیق درباره اسمبلی

اختصاصی از اینو دیدی تحقیق درباره اسمبلی دانلود با لینک مستقیم و پر سرعت .

لینک دانلود و خرید پایین توضیحات

فرمت فایل word  و قابل ویرایش و پرینت

تعداد صفحات: 114

 

آموزش اسمبلی

برای یاد گرفتن اسمبلی باید با مبناهای عدد نویسی ، ساختمان داخلی کامپیوتر و برنامه نویسی آشنا باشیم . ما برنامه هایمان را مستقیما با اسمبلر Macro Assembler خواهیم نوشت و گاها از Debugاستفاده خواهیم کرد . بعلاوه چون برنامه های حجیم نخواهیم نوشت قالب اکثر رنامه های ما COM. خواهد بود . برای شروع ابتدا نگاهی به حافظه میکنیم : حافظه و آدرس دهی هر کامپیوتر مبتنی بر 8086 دارای حداقل 640 کیلوبایت حافظه است . این 640 کیلوبایت به قطعات 64 کیلوبایتی تقسیم شده و ما این قطعات را "قطعه " یا Segmentمینامیم . هر سگمنت هم به خانه های تک بایتی دیگری تقسیم شده است . برای بدست آوردن مقدار یک بایت مشخص از حافظه ما باید عد مربوط به سگمنت و همچنین شماره آن بایت در سگمنت ( که آفست Offset نامیده میشود ) را بدانیم . مثلا اگر مقدار مورد نظر در قطعه 0030h(h( یعنی عدد در مبنای 16 است ) و آفست 13C4hباشد ما باید قطعه ای که شماره آن 0030h است را بیابیم و بعد در همان قطعه مقدار باین شماره 13C4 را بخوانیم . برای نمایش این حالت بین عدد سگمنت و آفست علامت (:) قرار میدهیم . یعنی ابتدا عدد مربوط به قطعه را نوشته و سپس عدد آفست را می آوریم : Segment:Offset مثال : 4D2F:َ9000 **همیشه در آدرس دهی ها از اعداد مبنای 16 استفاده میکنیم . | | | | CConvertional | 1 Segment=64K | | | | | Memory | | | | | | | | | | | | | | ثباتها Registers رجیسترها مکان هائی از CPU هستند که برای نگهداری داده ها (DATA) و کنترل اجرای برنامه بکار میروند . ما میتوانیم آنها را مقدار دهی کرده و یا بخوانیم و یا باتغییر محتوای آنها CPU را مجبور به انجام یک پروسه (رویه یا Procedure) کنیم دسته ای از رجیسترها که ما انها را "ثباتهای همه کاره یا همه منظوره " میخوانیم و شامل AX/BX/CX/DX هستند ، برای انتقال مقادیر بین رجیستر ها و CPU بکار میروند.این ثباتها را میتوانیم به هر نحوی تغییر دهیم و مقادیری را به آنهاارسال کنیم . ثباتهای دیگری هم که نام میبریم کاربردهای خاص خودشان را دارند و برای مقدار دهی آنها باید قواعد خاصی (که توضیح خواهیم داد) را بکار بریم . میکند عدد که در این ثبات وجود دارد شماره یک قطعه است و CPU برای یافتن DS : مخفف Data Segment . محل نگهداری متغییرها و ثابتهای برنامه را مشخص مقادیر لازم به آن قطعه مراجعه میکند . CS: مخفف Code Segment است و آدرس قطعه ای که برنامه در آن قرار گرفته را نشان میدهد . ES: این یک ثبات کمکی است و معمولا در آدرس دهی ها شماره قطعه را نگهداری میکند . DIDataIndex:Dبا DS/ESا مرتبط است و عدد آفست را نگهداری میکند . IP: این رجیستر معلوم میکند که برنامه در حال اجرائی که در CS قرار دارد از کدام بایت قطقه (یعنی کدام آفست ) شروع میشود . به همین دلیل همیشه این دو ثبات را با هم و بصورت CS:IP نشان میدهند. و ... تمام رجیسترهای فوق 16 بیتی (دوبایتی ) هستند و اعداد دوبایتی را نگهداری میکنند. ثباتهای همه منظوره به دو نیم ثبات تک بایتی تقسیم میشوند . بایت بالائی ب نماد H و بایت پائینی با نماد L نشان داده میشود . مثلا ثبات AX دارای دو نیم - ثبات AH/AL است : | AH - 8 Bit | AL -8 Bit | تمرین : برای دیدن رجیسترها در DOS، DEBUG، را اجرا کنید و فرمان R را صادر کنید : D:\MASM>DEBUG-RAX=0000 BX=0000 CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000DS=17AA ES=17AA SS=17AA CS=17AA IP=0100 NV UP EI PL NZ NA PO NC17AA:0100 0F

بیایید یک برنامه بنویسیم

در این قسمت میخواهیم با استفاده از مطالبی که در بخشهای قبلی یاد گرفتیم برنامه ای بنویسیم که کامل و قابل استفاده باشد . با این برنامه میتوانیم فلاپی دیسکهای خودمان را با سرعت کپی کنیم ! امروز برنامه را به شکلی مینویسیم که بتواند دیسکهای 1.44 را بوسیله درایو A کپی کند . بیشتر نیاز ما در کپی (تکثیر) دیسکها هم به همین شکل هست . با اینحال در قسمت بعدی نگارش (Version) جدیدتری از برنامه را مینویسیم و قابلیت تشخیص نوع دیسک و قابلیت مشخص کردن درایو را به آن اضافه میکنیم . بهترین کاری که میتوانیم بکنیم اینست که بتوانیم داده های خوانده شده از دیسک را در حافظه EMS بنویسیم (در این نسخه روی هارددیسک مینویسیم ) . وقتی که نحوه کار را حافظه گسترش یافته (Extended Memory) را هم یاد گرفتیم ، برنامه خود را کامل کرده و از آن بعنوان اولین دستختمان در برنامه نویسی اسمبلی لذت میبریم . لیست برنامه در زیر قرار دارد و توضیحات برنامه را روی آن میبینیم قبل از آن یاد آوری میکنم که هر دیسک HD َ1.44 دارای دو طرف و در هر طرف 80 شیار (Track) بوده و هر شیار هم به 18 بخش بنام قطاع (Sector) تقسیم میشود . برنامه ما باید محتوای تمام این قطاعها را خوانده و در فایلی روی دیسک سخت ذخیره کند. سپس همین داده ها را از فایل خوانده و مجددا روی دیسک جدید بنویسد. طول هر قطاع 512 بایت است EQU 512 SECTORSIZEتعداد شیار ها 80 شیار (79- 0-) است EQU 79 MAXTRACKهر دیسک دو طرف دارد EQU 2 NUMSIDESتعداد سکتور در هر شیار 18 تا است EQU 118 SECTOR_PER_TRACK E.MODEL SMALL.CODEORG 100HSTART:JMP MAINبافر برای ذخیره (0)BUF DB SECTORSIZE*SECTOR_PER_TRACK DUP


دانلود با لینک مستقیم


تحقیق درباره اسمبلی

تحقیق درباره دستورات اسمبلی دستورات گسترش داده

اختصاصی از اینو دیدی تحقیق درباره دستورات اسمبلی دستورات گسترش داده دانلود با لینک مستقیم و پر سرعت .

لینک دانلود و خرید پایین توضیحات

فرمت فایل word  و قابل ویرایش و پرینت

تعداد صفحات: 2

 

دستورات اسمبلی - دستورات گسترش داده

 

برای افزایش اندازه یک مقدار به کلمه یا کلمه مضاعف، با حفظ علامت، از دستورات گسترش استفاده می شود. دستورات گسترش بیت علامت ثبات انباشتگر(AL/AX) را بسط می دهند.

CBWCWD

 

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

 

CBW

دستور (convert byte to word) cbw محتوای بیت شماره هفت ثبات AL را در AX بسط می دهد. یعنی بیت شماره هفت ثبات AL را در کلیه بیت های ثبات AH کپی می کند. درنتیجه مقدار ریاضی بایت AL به یک کلمهAX گسترش پیدا می کند.

دستور هیچ عملوندی ندارد:

cbw

دستور cbw روی هیچیک از فلگ ها تاثیر ندارد.

دستور cbw در محاسبه تقسیم یک بایتی کاربرد دارد.

 

CWD

دستور (convert word to double word) cwd محتوای بیت شماره پانزده ثبات AX را در کلیه بیت های ثبات DX کپی می کند. درنتیجه مقدار ریاضی AX به یک کلمه مضاعف در DX:AX گسترش پیدا می کند.

دستور هیچ عملوندی ندارد:

cwd

دستور cbw روی هیچیک از فلگ ها تاثیر ندارد.

دستور cbw در عملیات تقسیم دوبایتی نقش بازی می کند.

 

مثال. برای گسترش مقدار 8 بیتی AL به یک مقدار 32 بیتی در DX:AX دو دستور پشت سر هم نوشته می شوند.

mov AL,85hcbwcwd

چون بیت علامت عدد 85h یک است تبدیل به عدد FFFFFF85h می شود که 16بیت پایین آن در ثبات AX و 16بیت بالای آن در ثبات DX قرار می گیرد. یعنی AX=FF85h و DX=FFFFh می شود.


دانلود با لینک مستقیم


تحقیق درباره دستورات اسمبلی دستورات گسترش داده

پاورپوبنت درمورد اصول اساسی برنامه نویسی به زبان اسمبلی

اختصاصی از اینو دیدی پاورپوبنت درمورد اصول اساسی برنامه نویسی به زبان اسمبلی دانلود با لینک مستقیم و پر سرعت .

 

دسته بندی : پاورپوینت 

نوع فایل:  ppt _ pptx

( قابلیت ویرایش )

 


 قسمتی از اسلاید پاورپوینت : 

 

تعداد اسلاید : 345 صفحه

اصول اساسی برنامه نویسی به زبان اسمبلی مو لف : Richard C.
Detmer مترجمین : هاشمی اصل - مشحون زبانهای ماشین و برنامه سازی سیستم فصل اول : نمایش داده ها در کامپیوتر فصل دوم : قسمت های یک سیستم کامپیوتری فصل سوم : استفاده از اسمبلر فصل چهارم : دستورالعملهای اساسی فصل پنجم : انشعاب و حلقه فصل ششم : روال ها فصل هفتم : عملیات رشته ها فصل هشتم : سایر حالت های آدرس دهی فصل نهم : دستکاری بیت ها فصل دهم : وقفه و ورودی / خروجی فصل یازدهم : پردازش اسمبلی فصل دوازدهم : ماکرو ها و اسمبلی شرطی فصل سیزدهم : مثال نمونه فهرست مطالب فصل اول نمایش داده ها در کامپیوتر فصل اول نمایش داده ها در کامپیوتر اعداد دودویی و شانزده شانزدهی کد های کارکتری نمایش مکمل 2 برای اعداد صحیح علامت دار جمع و تفریق اعداد مکمل 2 سیستم های دیگر برای نمایش اعداد چگونگی نمایش داده‌ها در زبان اسمبلی: اعداد دودویی و شانزده‌شانزدهی کدهای کاراکتری نمایش مکمل 2 برای اعداد صحیح علامت‌دار سیستم‌های دیگر برای نمایش اعداد مکمل یک BCD ممیز شناور اعداد دودویی و شانزده شانزدهی بیت کوچکترین واحد قابل ثبت در کامپیوتر است ارزش مکانی اعداد در مبنای 2 مانند اعداد در مبنای 10 است 123 در مبنای 10 برابر است با (3*1) + (2*10) + (1*100) 1010 در مبنای 2 برابر است با (0*1)+(1*2)+(0*4)+(1*8) نمادها در نمایش اعداد در مبناها مبنای 2 0, 1 مبنای 10 0,1,2,3,4,5,6,7,8,9 مبنای شانزده 0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F A=10 ,B=11, C=12, D=13, E=14, F=15 سیستم ارزش مکانی مبنای دو: یگان دوگان چهارگان هشت‌گان و ... اعداد دودویی به قدری طولانی هستند که خواندن و نوشتن آنها مشکل است.
سیستم شانزده‌شانزدهی می‌تواند اعداد را فقط با استفاده از یک چهارم ارقام سیستم دودویی نمایش دهد. به علت تبدیل ساده بین سیستم دودویی و شانزده شانزدهی، مبنای 16 بعنوان شکل کوتاه شده دودویی تلقی شود. در سیستم شانزده‌شانزدهی رقم‌های 0 تا 9 مورد استفاده قرار می‌گیرند؛ که علاوه بر این، به جای اعداد دهدهی 10 تا 15 حروف A تا F جایگزین می‌گردند. سیستم ارزش مکانی مبنای شانزده: یگان شانزده‌گان دویست‌و‌پنجاه‌و‌شش‌گان و...
جدول مقایسه اعداد در مبناهای متفاوت تبدیل مبنای 16 به مبنای 2: یک عدد شانزده‌شانزدهی می‌تواند به سادگی با جایگزینی چهار بیت برای هر رقم شانزده‌شانزدهی به عدد معادل دودویی تبدیل شود.
تبدیل مبنای 2 به مبنای 16: ابتدا از سمت راست، عدد را به دسته‌های چهاربیتی تقسیم می‌کنیم و سپس هر دسته را با رقم معادل شانزده شانزدهی آن جایگزین می‌نماییم.
روش تبدیل عدد دهدهی به شانزده شانزدهی با تقسیم متوالی عدد بر 16 و قراردادن باقیمانده هادر کنار یکدیگر مثال عدد 5876 در مبنای 16 به روش زیر محاسبه میشود 5876 ÷16 باقیمانده 4 376 = 367 ÷ باقیمانده 15 22 = 16 22 ÷ باقیمانده 6 1 = 16 1 ÷ باقیمانده 1 0 = 16 16F4 طول کلمات بایت 8 بیت یا 1 بایت کلمه یا WORD 16 بیت یا 2 بایت کلمه مضاعف

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

 


  لطفا به نکات زیر در هنگام خرید دانلود پاورپوینت:  توجه فرمایید.

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


 

 

 « پرداخت آنلاین و دانلود در قسمت پایین »




دانلود با لینک مستقیم


پاورپوبنت درمورد اصول اساسی برنامه نویسی به زبان اسمبلی

مجموعه سورس کد اسمبلی

اختصاصی از اینو دیدی مجموعه سورس کد اسمبلی دانلود با لینک مستقیم و پر سرعت .

مجموعه سورس کد اسمبلی


مجموعه سورس کد اسمبلی

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

شامل:

چاپ رشته با های لایت زمینه و چاپ رشته معمولی.

تایمر

تبدیل اسکی به باینری

شمارش تعدا کارکترهای وارد شده

برعکس کردن رشته

مار

و....


دانلود با لینک مستقیم


مجموعه سورس کد اسمبلی