به سایت ما خوش آمدید . امیدوارم لحظات خوشی را درسایت ما سپری نمایید .

خوش آمدید

هر گونه نظر و پیشنهاد و انتقادی داشتید، در قسمت نظرات اعلام کنید.

سوني رکورد دوربين‌ها را شکست

سوني 2 حسگر تصويري جديد براي تلفن‌هاي همراه توليد کرد. اين دوربين‌ها در اندازه‌هاي 41/16 مگاپيکسل با لنز CMOS براي فيلمبرداري تصاوير با تفكيك‌پذيري 1080 پيكسل کاملا مناسب هستند. ديگر دوربين توليدي اين شرکت توانايي ضبط تصاوير با رزولوشن 8مگاپيکسل را داراست.


بقيه در ادامه

 

ادامه مطلب
جمعه 30 مهر 1389  - 9:11 AM

قصد داريد براي همه دوستان خود به هر مناسبتي پيغام تبريک بفرستيد يا قرار است سر يک ساعت مشخص گزارش کار خود را براي کارفرماي خود بفرستيد، اما تاريخ‌ها را فراموش مي‌کنيد؟

نگران نباشيد ويندوز راهکاري به شما ارائه مي‌دهد که از اين حواس‌پرتي‌ها خلاص شويد. فقط کافي است با زمانبند وظايف ويندوز آشنا شويد.

براي اين کار در Control Panel به بخش زير رفته:

Control Panel\System and Security\Administrative Tools

سپس Task Scheduler را اجرا کنيد.

در سمت راست پنجره باز شده، بر Create Basic Task‌ کليک کرده سپس در بخش Name يک نام براي کاري که مي‌خواهيد در زمانبند ويندوز قرار گيرد، در نظر مي‌گيريد و در بخش Description هم مي‌توانيد يک توضيح در مورد کاري که مي‌خواهيد انجام دهيد بنويسيد.

در بخش زماني، موقعي که بايد وظيفه شما انجام شود را مشخص مي‌کنيد. براي مثال Daily، هر روز کار را انجام مي‌دهد، Weekly، هر هفته و يا شرايط خاصي مثلا روشن کردن کامپيوتر و....

در بخش ساعت انجام کار، ساعتي را در روز و تاريخ (اين بخش در شرايطي استفاده مي‌شود که نياز به تاريخ است مثلا وقتي که در مرحله قبل Once Time‌ را مشخص کرده باشيد) مشخص مي‌کنيد که قرار است کار شما انجام شود.

در بخش بعد نوع کار را مشخص مي‌کنيد، مانند فرستادن يک ايميل و اجراي يک برنامه.

در بخش بعدي از شما جزئياتي در مورد مرحله قبل مي‌خواهد. مثلا اگر در مرحله قبل گزينه Start a program‌ را انتخاب کرده باشيد، در اين بخش از شما نشاني فايل اجرايي و پارامتر‌هايي که براي اجرا شدن فايل نياز است را از شما مي‌خواهد (براي نمونه، اگر مي‌خواهيد سر ساعت مشخص کامپيوتر شما خاموش شود در بخش نشاني برنامه shutdown را وارد کرده و در بخش Add arguments عبارت s/ را بنويسيد. يا اگر در مرحله قبل گزينه Send an e-mail را انتخاب کرده باشيد در اين مرحله مشخصات مربوط به فرستنده و گيرنده و متن پيغام و اگر فايل ضميمه‌اي داشت را مشخص مي‌کنيم.

پس از اين مرحله کار شما ساخته شده و در صف زمانبند ويندوز قرار گرفته است از اين به بعد مطمئن خواهيد بود که اگر فراموش کرديد کاري را انجام دهيد ويندوز به‌صورت اتوماتيک آن‌را در زمان مشخص انجام مي‌دهد.كليك

ادامه مطلب
جمعه 30 مهر 1389  - 9:08 AM
شايد استفاده از يك وب‌كم به‌جاي يك دوربين مدار بسته، كاري عاقلانه به‌نظر نرسد، اما هنگامي كه سخت‌افزار مورد نياز را به‌همراه يك برنامه نرم‌افزاري مناسب به‌كار ببريد با تعجب خواهيد ديد كه چه سيستم امنيتي فوق‌العاده‌اي را راه‌اندازي كرده‌ايد.

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

اين سيستم كنترل امنيتي پايه كه webcam CCTV ناميده مي‌شود، يك سري تصاوير ثابت را بر يك وب سرور بارگذاري مي‌كند و اين وظيفه كاربر است كه با دقت به اين تصاوير تشخيص دهد كه آيا اتفاقي غيرعادي در جريان است يا نه؟ يك گزينه سريع‌تر ديگر استفاده از خدمات نظارت برپايه وب با رديابي حركتي است. استفاده از اين سرويس نه‌تنها نياز به باز گذاشتن شبكه شخصي‌تان بر وب را منتفي مي‌سازد، بلكه هنگامي كه چيزي در ميدان ديد وب‌كم شما حركت كند، شما را خبردار مي‌كند. ما در اينجا مراحل كار را به‌شرح زير توضيح مي‌دهيم:

1- اول در نشاني www.gotocamera.com يك اكانت رايگان باز و ثبت نام كنيد. اگر مي‌خواهيد كه ايميل‌هاي هشداردهنده به آدرس پست الكترونيكي شما ارسال شود، مربع مربوط را تيك بزنيد. صفحه وب بعدي حاوي يك لينك دانلود به برنامه GotoCamera است؛ آن را دانلود كنيد. پس از انجام تنظيمات دوربين به صفحه بعدي My Camera page برويد.

2- وب‌كم خود و گرداننده‌هاي آن را بر رايانه خود نصب و سپس برنامه كاربردي GotoCamera client را نصب و اجرا كنيد. با كليك روي Add camera در نوار ابزار برنامه دوربين خود را اضافه كنيد. پس از آن براي تكميل اطلاعات اكانت خود به صفحه ديگري راهنمايي مي‌شويد.

3- Next را بزنيد، كيفيت تصوير را تنظيم كرده و گزينه رديابي حركتي را فعال كنيد.

4- با كليك بر دكمه تنظيمات پيشرفته مي‌توانيد از بين گزينه‌هاي تصوير ثابت Capture a still image و ويديو كليپ 10 ثانيه‌اي، يكي را انتخاب كنيد. البته سرويس ويديويي رايگان نيست.

5- پس از تكميل تنظيمات وب‌كم، OK را كليك كنيد و يك پيش‌نمايش از تصوير دوربين را در پنجره برنامه خواهيد داشت كه مي‌توانيد آن را به‌نسبت سرعت اينترنت تنظيم كنيد.

6- حالا شما مي‌توانيد وب‌كم خود را از بخش Connected section وب‌سايت GotoCamera مانيتور كنيد. هنگامي كه حركتي تشخيص داده شود، وب‌كم شما يك تصوير را گرفته و تحت عنوان فايل پيوست به پست الكترونيكي شما مي‌فرستد. هيچ فكر مي‌كرديد كه راه‌اندازي يك سيستم كنترل امنيتي دوربين مدار بسته با وب‌كم تا اين حد ساده و آسان باشد؟!

جواد ودودزاده


ادامه مطلب
جمعه 30 مهر 1389  - 9:06 AM
اگر شما يك كارت گرافيكي خوب داشته باشيد، رايانه‌هاي شخصي براي بازي، دستگاه‌هاي محشري هستند، اما با اين همه مدل از كارت‌هاي گرافيكي ATI و انويديا كه در بازار يافت مي‌شوند، انتخاب آنها مي‌تواند گيج‌كننده باشد.

به همين خاطر ما براي اين كه كار شما را آسان كنيم، تقريبا همه كارت‌هايي را كه به‌تازگي وارد بازار شده‌اند، مورد آزمايش قرار داديم تا شما را براي بهترين انتخاب راهنمايي كنيم. اگر هم به بازي‌هاي رايانه‌اي علاقه‌اي نداريد، حتما به نمايش ويدئوي با كيفيت HD و خروجي آن از طريق كابل HDMI روي صفحه تلويزيون LCD يا LED خود علاقه‌مند هستيد.

بقيه در ادامه

 


ادامه مطلب
جمعه 30 مهر 1389  - 9:02 AM

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

اين را بايد هميشه در نظر گرفت که اجراي بهينه و کاراي يک قطعه‌کد يا يک الگوريتم در مصرف بهينه‌ منابع کامپيوتر نقش مهمي دارد.

براي مثال اگر دقيق بدانيم به چه مقدار فضا براي ذخيره يک داده مشخص نياز داريم و بر پايه آن نوع متغير مورد نياز خود را تعريف کنيم يا اين‌كه يکسري دستورات چندبار بايد اجرا شوند و اين دستورات چه مقدار زمان پردازشگر را مي‌گيرند، در به‌كارگيري بهينه پردازشگر نقش خواهد داشت.

به‌‌رغم اين‌که يکسري کليات بايد براي طراحي و پياده‌سازي الگوريتم لحاظ شود، اما هر مساله براي خود شرايط خاصي دارد، اما در نظر گرفتن برخي موارد به کارايي بهتر الگوريتم و قطعه کد ما کمک مي‌کند. برخي از اين موارد بدين شرح‌اند:

1- حذف بخش‌هاي اضافه در کد

گاه برخي از دستورات به‌صورت ثابت چندين بار پشت سر هم اجرا مي‌شوند، اين امر بيشتردر قطعه‌کد مربوط به حلقه‌ها ديده مي‌شود.

براي نمونه، يک دستور ثابت هميشه در يک بار اجراي حلقه محاسبه مي‌شود، مي‌توان با بيرون آوردن اين دستورات به خارج از حلقه و اجراي آنها در آنجا به اجراي بهينه يک حلقه کمک کرد و از زمان پرتي که براي محاسبه اين دستور يا دستورات در هر بار اجراي حلقه صرف مي‌شود، جلوگيري کرد.

به‌طور مثال قطعه کد زير را در نظر بگيريد:

for (int i = 0; i « length; i++) {

x += 1.0;

y = (a*a*a)*x*x + b*b*i;

}

محاسبه a به توان 3 و b به توان 2يهوده است چون هميشه يک مقدار ثابت دارند ولي در هر بار اجراي حلقه محاسبه مي‌شوند.

راه حل اين است که اين مقادير يک بار بيرون حلقه اجرا شوند و در دفعات بعد از حاصل اين عبارت درون حلقه استفاده شود. اين امر سبب مي‌شود که سرعت و زمان اجراي دستورات درون حلقه نسبت به حالت اول بهتر شود.

بهينه شده کد بالا به‌صورت زير است:

power3a = a*a*a;

power2b = b*b;

for (int i = 0; i « length; i++) {

x += 1.0;

y = power3a*x*x + power2b*i;

}

2 ارجعات به عناصر آرايه

اگر هنگام کدنويسي دقت لازم را نداشته باشيم اين محاسبات اضافه که در بالا توضيح داده شد، به پردازش عناصر يک آرايه نيز سرايت مي‌کند و باعث كندي اجراي قطعه کد ما و اتلاف زمان پردازشگر شود.

براي مثال قطعه کد زير را در نظر بگيريد

p = 0;

for (int i = 0; i « length; i++) {

if (a[i] » a[p])

p = i;

max = a[p];

}

در قطعه کد بالا قطعه فرمان [max = a[p بي‌دليل در هر بار اجراي حلقه، محاسبه مي‌شود که نيازي به اين کار نيست. تنها کافيست وقتي که عنصر iم از عنصر pم کوچک‌تر بود، اجرا شود. حالا قطعه کد بالا را بازنويسي مي‌کنيم:

p = 0;

for (int i = 0; i « length; i++) {

if (a[i] » a[p]) {

p = i;

max = a[p];

}

}

3- عدم کارايي در نتيجه ديرکرد

گاهي پايين بودن کارايي يک قطعه کد به لحاظ آزمون‌‌هاي غيرضروري است. بگزاريد اين موضوع را با يک مثال نشان دهيم:

فرض کنيد دنبال دانشجوياني با اسم “آرش” مي‌گرديم، يک راه اين است که “آرش” را با نام همه دانشجويان مقايسه کنيم و کساني که اسم آنها “آرش” است را در يک ليست ذخيره کنيم، اين راه درست است و مشکلي ندارد ولي آيا اين راه يک راه بهينه براي حل مساله است؟

پاسخ خير است، چون در بدترين حالت نام‌هاي “آرش” در انتهاي ليست هستند و براي يافتن فهرست آنها نيازمند پردازش کل آرايه تا انتها است. اما راه‌حل براي بهبود کارايي روش بالا چيست؟

بهتر است ابتدا دانشجويان را بر اساس اسامي مرتب بکنيم و سپس دنبال دانشجوياني که اسم آنها “آرش” است بگرديم و اگر نامي بزرگ‌تر از “آرش” بود (مانند “آرشين”) از آنجا به‌بعد را مورد بررسي قرار نمي‌دهيم و همان‌جا پايان کار ماست. درست است ما يک زمان اضافي براي مرتب‌سازي آرايه‌ها صرف کرديم ولي در دفعات بعد براي داده‌هاي ديگر نيازي به اين عمل نيست چون فقط يک بار داده‌ها مرتب مي‌شوند و در دفعات بعدي از نتيجه مرتب‌سازي استفاده مي‌شود.

يک مثال ديگر از اين عدم کارايي بعضي از پياده‌سازي‌هاي الگوريتم مرتب‌سازي حبابي (Bubble sort)است.

for i = 1 to n-1

for j = 1 to n-1

if (a[j] » a[j+1])

exchange a[j] with a[j+1];

بهتر است به‌جاي شبه کد بالا از شبه کد زير استفاده کرد:

for i = 1 to n-1

for j = 1 to n-i

if (a[j] » a[j+1])

exchange a[j] with a[j+1]

به‌عنوان تمرين بهتر است سري به کد‌هاي قديمي نوشته خود بزنيد و آنها را بررسي کنيد و موراد بالا را لحاظ کنيد و کارائي آنها را بيازماييد.

امير بهاالدين سبط‌الشيخ

ادامه مطلب
جمعه 30 مهر 1389  - 9:01 AM

صفحات سایت

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

جستجو

آمار سایت

کل بازدید : 5821871
تعداد کل پست ها : 30564
تعداد کل نظرات : 1029
تاریخ ایجاد بلاگ : پنج شنبه 19 شهریور 1388 
آخرین بروز رسانی : دوشنبه 19 آذر 1397 

نویسندگان

ابوالفضل اقایی