امروز بورس ایران در سهم وتجارت شاهد اعداد و ارقام عجیبی بود که باعث حیرت سهامدارانش شد. تصویر زیر را نگاه کنید:

دانشگاه برنامه نویسان رد پای overflow در معاملات بورس

روح الله دهقان (مدیرعامل مدیریت فناوری بورس تهران) درباره نمایش رشد عجیب ۴۸۹۶ درصدی قیمت سهام بانک تجارت که موجب حیرت فعالان بازار شد به بورس پرس توضیح داد: این رویداد نادر ناشی از محدودیت سیستمی در محاسبه قیمت پایانی سهام شرکت های دارای معامله بیش از دو میلیارد و 147 میلیون و 883 هزار و 647 سهم بود.
وی ادامه داد: شرکت سازنده سامانه معاملات ( آتوس فرانسه ) این محدودیت را از قبل در سامانه لحاظ کرده بود که اگر سهام شرکتی در یک روز بیش از رقم 2.1 میلیارد سهم معامله شود به طور خودکار ، قیمت پایانی اصطلاحا” over flow و سر و ته نمایش داده می شود.

در آموزش برنامه ‌نویسی در مورد این اصطلاح کمی صحبت شده بود اما بد نیست که در اینجا دقیق تر و به زبان ساده در مورد این موضوع صحبت کنیم:

در برنامه نویسی وقتی می‌خواهیم یک متغیر را استفاده کنیم نیاز به تعریف داریم. وقتی مینویسیم int x یعنی متغیر x متغیری است که در آن عدد صحیح ذخیره میشود. اما آیا هر عددی میتوان در x ذخیره کرد؟ خیر. محدوده مشخصی از اعداد میتوانند در x ذخیره شوند. محدوده دقیق int به صورت زیر است:

از 2,147,483,648- تا 2,147,483,647

یعنی اگر بخواهیم در x عدد 3 میلیارد را ذخیره کنیم به درستی ذخیره نمی‌شود، چرا؟ زیرا در این محدوده وجود ندارد. پس چه اگر 3 میلیارد را در x ذخیره کنیم چه اتفاقی می‌افتد؟ اصطلاحا over flow یا سر ریز اتفاق می‌افتد. به زبان ساده میتوان گفت عدد 3 میلیارد در این محدوده دور می‌زند!

با مثال ساده تر دنبال میکنیم. فرض کنید محدوده اعداد 10-تا 10 باشد. فرض کنید بخواهیم 12 را ذخیره کنیم. 12 دو واحد بیشتر سقف محدوده (10) است. پس به اندازه دو واحد از انتهای محدوده حرکت می‌کند و 9- را ذخیره می‌کند. یعنی اگر بخواهید 12 را ذخیره کنید -9 ذخیره می‌شود. با مقایسه محدوده int و عکس بالا به خبی متوجه مفهوم over flow یا سر ریز در این عکس می‌شوید. چون حجم معاملات از 2,147,483,647 بیشتر شده پس سرریز شده و محدوده را از منفی شروع کرده و دور زده است.

راه حل این مشکل چیست؟ به جای استفاده از int از long int استفاده شود. با این کار حجم معاملات را تا 18 رقم درست می‌توان گزارش کرد

مدیرعامل بورس مشکل نمایش حجم منفی امروز وتجارت را over flow دانست که با توجه به اعدادی که بر روی تابلو مشاهده می‌کنید منطقی به نظر می‌رسد اما اشکال کار اینجاست که حجم بالای دو میلبارد در گذشته اتفاق است و مشکلی در ثبت این اطلاعات وجود نداشته است.

دانشگاه برنامه نویسان رد پای overflow در معاملات بورس

به نظر میرسد که باید این مشکل را در کنار هزار و یک ایرادی که در سیستم معاملاتی بورس ایران وجود دارد قرار داد. هر چند که مدیرعامل بورس گفته است این مشکل برطرف شده است اما دور از انتظار نیست که باز هم شاهد مشکلات جدید در این سیستم معاملاتی باشیم.