PDA

View Full Version : مشکل در نمایش اعداد



majidrezaei2007
پنج شنبه 23 دی 1389, 14:20 عصر
با عرض سلام خدمت دوستان عزیز
من یک برنامه دارم که توش یک زیر برنامه به اسم print داره و می خوام کاری کنم که اون زیر برنامه اعداد منفی رو هم چاپ کنه . من این تکنیک رو به کار بردم که میام عدد رو چک می کنم ، در صورتی که منفی بود ابتدا یک کاراکتر منفی چاپ می کنم و سپس عددم رو در 1- ضرب می کنم و چاپش می کنم . تا اینجا مشکلی نیست

مشکل اصلی اینجاست که اون عدد منفی از یک پردازش به دست می یاد ، مثلا 2- تقسیم بر 2 میشه . اینجا به جای اینکه عدد FFFF به عنوان 1- تولید بشه ، عدد 7FFF تولید میشه و اینو زیر برنامه چاپ نمی تونه تشخیص بده و عدد 32768 رو چاپ می کنه .

نمی دونم چیکار کنم . لطفا کمکم کنید :افسرده:

xman_1365_x
پنج شنبه 23 دی 1389, 20:28 عصر
كدتون رو ميزاشتين ببينم چرا محاسبات اشتباه ميشه
اما براي مثالي كه نوشتين به اين صورت ميشه


mov ax,-2d
mov bl,2
idiv bl ; ax= 00ff = -1d
;negative =( 1- not ax , 2- inc ax)
;neg ax ; ax= ff01h !!!
neg al ; ax= 1d