Курсовая: Вывод на экран текущего каталога в графическом режиме (со скроллингом) - текст курсовой. Скачать бесплатно.
Банк рефератов, курсовых и дипломных работ. Много и бесплатно. # | Правила оформления работ | Добавить в избранное
 
 
   
Меню Меню Меню Меню Меню
   
Napishem.com Napishem.com Napishem.com

Курсовая

Вывод на экран текущего каталога в графическом режиме (со скроллингом)

Банк рефератов / Программирование

Рубрики  Рубрики реферат банка

закрыть
Категория: Курсовая работа
Язык курсовой: Русский
Дата добавления:   
 
Скачать
Microsoft Word, 3822 kb, скачать бесплатно
Заказать
Узнать стоимость написания уникальной курсовой работы

Узнайте стоимость написания уникальной работы

Министерство образования Российской Федерации Институт переподготов ки кадров Уральского государственного технического университета Кафедра микропроцессорной техники Курсовая работа На тему : Вывод на экран текущий каталог в графическом режиме (со скролингом ) Руководитель В.П . Кулюкин Студент гр.СП -923 г.Нягань 2001г. СОДЕРЖАНИЕ ВВЕДЕНИЕ 3 ОСНОВНАЯ ЧАСТЬ 4 ЗАКЛЮЧЕНИЕ 17 БИБЛИОГРАФИЧЕСКИЙ СПИСОК 18 Введение. Ассемблер - один из самых старых из суще ствующих сегодня языков программирования.Когда-то это был самый основной язык , без которого нельзя было заставить компьютер сделать что-либо полезное. Постепенно ситуация менялась . Появились более удобные средства общения с компьютером . Но в отличии от дру гих языков ассемблер не умирал , более того он немог этого сделать в принципе. Если коротко , то ассемблер - это символическое представление машинного языка . Все процессы в машине на самом низком , аппаратном уровне приводятся в действие только командами машин ногшо языка. Отсюда понятно , что несмотря на общее название , язык Ассемблера для каждого типа компьютера свой . Это касается и внешнего вида программ , написанных на Ассемблере , и идей , отражением которых этот язык является. Описание программы. Windows-при ложение на ассемблере содержит один сегмент данных .data и один сегмент кода .code. В программе использовано 28 функций API. Параметры этим функциям передаются через стек , результат возвращается в регистре ЕАХ. Регистр mode1 задает модуль сегментации (flat ) и стиль генерации кода при входе в процедуры программы и выходе из них (stdcall). Модель памяти flat обозначает плоскую модель памяти . В соответствии с этой моделью компилятор создает программу , которая содержит 32-битовый сегмент для данных и кода прог р аммы . Указание этой модели памяти заставляет компоновщик создать исполняемый файл с расширением .exe. Параметр stdcall определяет порядок передачи параметров через стек справа налево. Директива include включае в программу файл win32.inc. Функции Win32 API , используемые в программе должны быть объявлены с помощью директивы extrn для того , чтобы компилятор мог сгенерировать правильный код. Строки 35-68 содержат описание сегмента данных , в котором определяются переменные и экземпляры структур , используемые в программе . Для запуска приложения под управлением Windows необходимо выполнить ряд шагов , содержание которых заключается в вызове ряда функций Win32.API: * Выполнение стартового кода ; * Выполнение главной функции , которая выполняет следующие действия ; Реги стрирует класс окна ; Создает окно ; Отображает окно ; Запускает цикл обработки сообщений ; Завершает цикл обработки сообщения ; * Организация обработки сообщений в оконной процедуре. Оконная процедура определяет то , что выводится в рабочую область окна , и то , как окну реагировать на пользовательский ввод.Создание окна выполняется функцией Win32 API CreateWindowEx. Для этого ей нужно передать множество параметров . Для создания окна необходимы 2 шага : сначала определение класса окна , а лишь затем непосредственно его создание . После выполнения функции CreateWindowExA создается окно , но это пока произойдет только лишь внутри самой Windows, - на экране это новое окно пока еще не отобразится . Для того чтобы созданное окно появилось на экране , применяем функцию ShowWi ndowA. В качестве параметров этой функции передается дескриптор hWnd окна , которое необходимо отобразить на экране , и константа , задающая начальный вид окна. Приложение может иметь несколько оконных функций . Их количество определяется количеством классов о кон , зарегестрированных в системе функцией Register Class(Ex). Windows требует , чтобы оконная функция сохраняла значения регистров ebi, edi и esi ,т.к . оконная функция должна быть рекурсивной.По завершении работы оконная функция формирует значения в регис тре EAX. Если сообщение обрабатывалось в оконной функции , то в eax необходимо поместить нулевое значение. Полосы прокрутки - этоэлементы управления , предназначенные для регулирования вертикального и горизонтального положения на экране ассоциированных с ним и объектов . Разница между полосами прокрутки , являющимися частью окна и полосами прокрутки - дочерними окнами , состоит в том , что дочерние окна имеют встроенный клавиатурный интерфейс , позволяющий воздействовать на полосу прокрутки с помощью клавиатуры . С о общение SB_LINEUP генерируется обеими полосами при щелчке на верхней или левой стрелке , а сообщение SB_LINEDOWN - в случае нажатия нижней или правой стрелки . Чтобы полоса прокрутки функционировала корректно необходимо определить для нее диапозон прокрутки и задать позицию бегунка. Встроенная полоса прокрутки , к сожалению , досталась только управлению с помощью курсора мыши . По умолчанию для полос прокрутки , являющимися частью окна , этот диапозон (число шагов мужду крайними позициями бегунка ) определен от 0 до 100. Для того , чтобы изменить диапозон прокрутки необходимо вызвать функцию SetScrollRange В Windows не смотря на то , что операции ввода осуществляемые приложением , ограничены рабочей областью его окна , программа должна быть готова обновить информацию в э той области по требованию системы. В программе использован ряд функций Windows API, которые как бы являются основными , когда речь идет об оконных процедурах (CreateWindow, ShowWindow и др .). Рассмотрим подробнее процедуры , которые организованы на основе стиля окна. Краткое описание процедур : InvalidateRect - эта функция добавляет прямоугольник к области модификации указанных окон . Область модификации является частью области клиентского окна , которая должна быть повторно перересована . Параметры : hWnd опр еделяет окно , чья область изменилась , если этот параметр равен 0, то Windows изменяет все окна и посылает оконной процедуре сообщение *WM_ERASEBKGND and WM_NCPAINT*; lpRect указатель на структуру RECT, которая содержит координаты клиентского прямоугольник а , который будет добавлен к области модификациибласти . Если этот параметр равен ноль , то вся область клиента добавляется к области модификации. BErase определяет должен ли быть стерт фон в пределах области модификации . Если этот параметр true, фон стираетс я при вызове BeginPaint GetClientRect - отыскивает координаты области клиента окна . Клиентские координаты определяют координаты верхнего левого и правого нижнего углов . Координаты верхнего левого угла равны (0,0). Параметры : hWnd : определяет окно , коорди наты которого надо найти. lpRect: указатель на структуру , которая получит кооридинаты. При правильном завершении функции возвращается значение , отличное от 0. SetScrollRange - функция устанавливает минимальное и максимальное значения позиций для указанной полосы прокрутки . Может также использоваться для скрытия стандартной полосы прокрутки. Параметры : hWnd : определяет , что это стандартное окно с полосой прокрутки или просто полоса прокрутки , в зависимости от значения параметра nBar. nBar: определяет поло су прокрутки . Этот параметр может принимать разные значения . Он устанавливает диапазон управления , если полоса окно . Устанавливает диапазон стандартной вертикальной или горизонтальной полосы прокрутки . Определяет минимальную прокручиваемую позицию . Опреде л яет , должна ли быть полоса прокрутки повторно оттянута . Если истина , то да , должна быть. ScrollWindow - функция , которая прокручивает содержание области клиента указанного окна. hWnd : определяет дескриптор окна , где клиентская область должна быть прокруч ена. XAmount: определяет состав модуля для горизонтальной прокрутки. YAmount: определяет состав модуля для вертикальной прокрутки. lpRect: указатель на структуру RECT , определяющую часть области клиента для прокрутки . Если этот параметр равен 0, то прокру чивается вся клиентская область lpClipRect: указатель на структуру RECT , содержащую координаты прямоугольника отсечения . Если функция выполнилась правильно , то она возвращает значение , отличное от ноля. SetScrollPos - функция , которая устанавливает пози цию бегунка в указанной полосе прокрутки и изменяет эту позицию. Параметры : hWnd : идентифицирует полосу прокрутки или окно со стандартной полосой прокрутки , в зависимости от значения параметра nBar. nBar: определяет полосу прокрутки. Этот параметр может принимать одно из следующих значений : - SB_CTL - устанавливает позицию бегунка в управлении полосы прокрутки , hWnd - дискриптор полосы прокрутки . - SB_GORS - устанавливает позицию бегунка в стандартной горизонтальной полосе прокрутки. - SB_VERT - устанав ливает позицию бегунка в стандартной вертикальной полосе прокрутки. nPos: параметр , определяющий новую позицию бегунка . Она должна быть в пределах прокручиваемого диапазона. bRedraw: параметр , определяющий оттянута ли повторно полоса прокрутки , для того чт обы отобразить новую позицию бегунка . Если этот параметр истина , то полоса прокрутки повторно оттянута. Если функция неправильно завершена , то возвращается ноль. p486 ; эта директива разрешает транслятору ; обрабатывать команды процессора i486 2. jumps ; транслятор автоматически преобразует ; команду условной передачи управления в комбинацию ; условной и безусловной команд , если условная команда в ; cилу ограниченности области своего действия не ; обеспечивает передачу управления по нужному адресу 3. m odel flat,STDCALL ; выбирается модель памяти для 32- ; разрядного программирования и правила ;передачи параметров функциям STDCALL, ; далее действующие по умолчанию 4. include win32.inc ; файл , содержащий описания структур ; данных и констант 5. L equ ; последовательности символов LARGE, ; являющейся именем операции , ; объявляющей следующий за ней операнд ; 32-разрядным , присваивается имя L 6. extrn ginPaint : PROC ; описание импортируемых из ;Windows функций 7. extrn CreateWindowExA:P ROC 8. extrn DefWindowProcA:PROC 9. extrn DispatchMessageA:PROC 10. extrn EndPaint:PROC 11. extrn ExitProcess:PROC 12. extrn GetMessageA:PROC 13. extrn GetModuleHandleA:PROC 14. extrn LoadCursorA:PROC 15. extrn LoadIconA:PROC 16. extrn PostQuitMessage:PROC 17. extrn RegisterClassA:PROC 18. extrn ShowWindow:PROC 19. extrn TextOutA:PROC 20. extrn UpdateWindow:PROC 21. extrn GetTextMetricsA:PROC 22. extrn Se tCurrentDirectoryA:PROC 23. extrn FindFirstFileA:PROC 24. extrn FindNextFileA:PROC 25. extrn FindClose:PROC 26. extrn SetScrollPos:PROC 27. extrn InvalidateRect:PROC 28. extrn GetClientRect:PROC 29. extrn ScrollWindow:PROC 30. extrn GetDC:PROC 31. extrn Re leaseDC:PROC 32. extrn SetScrollRange:PROC 33. extrn TranslateMessage:PROC 34. . data ; предопределенное имя , ;означающее начало сегмента данных 35. hFindFile dd 0 36. newhwnd dd 0 37. wc WNDCLASS 38. qq1 db '@@@@' 39. lppaint PAINTSTRUCT 40. qq2 db '@@@@' 41. msg MSGSTRUCT 42. tm TEXTMETRIC 43. rc RECT 44. charht dd 0 45. hInst dd 0 46. fl dw 0 47. szTitleName db ' Это курсовой ',0 48. szClassName db ' ASMCLASS 32',0 49. Buffer db 'Помни о порядке передачи пара метров функции !',0 50. buf_v db 260 dup (0) 51. num dd 0 52. ;########################## 53. lpPathName dd 0 54. szP db 0 55. w32fd WIN32_FIND_DATA 56. lpFileName dd 0 57. fn db "*.*",0 58. ;########################## 59. nVertDifference dd 0 60. nVe rtPosition dd 0 61. cyStep dd 0 62. nFirst dd 0 63. nLast dd 0 64. cyMax dd 0 65. cyPos dd 0 66. cory dd 5 67. count dd 0 68. py dd 0 69. .code ;предопределенное имя , означающее ;начало сегмента кода 70. start : 71. push L 0 72. call GetModuleHandleA ;возвращает базовый адрес модуля, ;указывающий , куда был отображен в адресном ; пространстве процесса EXE- или DLL файла 73. mov [hInst], eax ; результат выполнения функции сохраняется в качестве переменной hInst 74. reg_class: 75. ;**** ******************************************** ;инициализация структуры WNDCLASS 76. mov [wc.clsStyle], CS_HREDRAW + CS_VREDRAW ; стиль класса 77. mov [ wc . clsLpfnWndProc ], offset WndProc ;адрес оконной процедуры 78. mov wc.clsCbClsExtra], 0 ;определяет д ополнительное число ; байтов для структуры класса окна , ; которые система резервирует ;в служебной памяти для всех окон ; этого класса 79. mov [wc.clsCbWndExtra], 0 ; задает в байтах объем памяти, ; резервируемой системой в конце ; каждой такой стру ктуры каждого окна ; данного класса 80. mov eax , [ hInst ] 81. mov [ wc . clsHInstance ], eax ; содержит базовый адрес данного ; EXE - файла , полученный с помощью ; функции GetModuleHandle 82. call LoadIconA, 0, IDI_APPLICATION ; заданная по умолча нию ; пиктограмма 83. mov [wc.clsHIcon], eax 84. call LoadCursorA, 0 ,IDC_ARROW ; стандартная стрелка курсора 85. mov [wc.clsHCursor], eax 86. mov [wc.clsHbrBackground],COLOR_WINDOW +1 87. mov dword ptr [wc.clsLpszMenuName], 0 88. mov dword ptr [wc.clsLpszClassName], offset szClassName 89. call RegisterClassA, offset wc ; регистрирует класс окна , ; атрибуты которого определены ;в структуре WNDCLASS 90. call CreateWindowExA, 0,offset szClassName,offset szTitleName, \ ; создает ок но , имеющее указанный тип ; и принадлежащее указанному классу 91. WS_OVERLAPPEDWINDOW OR WS_VSCROLL,CW_USEDEFAULT, \ 92. CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,0,0, \ 93. [hInst], 0 94. mov [newhwnd], eax 95. call ShowWindow, [newhwnd], SW_SHOW NORMAL ; показывает каким ; образом должно быть ; показано окно 96. call UpdateWindow, [newhwnd] ; обновляет изображение ; окна , посылая ;сообщение WM_PAINT ; оконной процедуре , если ; область модификации ; окна не пуста 97. msg_loop: 98. call GetMessageA, offset msg, 0, 0, 0 ;считывает сообщение ; очереди сообщений ; прикладной задачи 99.. if eax != 0 100. call DispatchMessageA, offset msg ; передает сообщение ; оконной процедуре 101. call TranslateMessage, offset msg 102. jm p msg_loop 103. ; .endif 104. call ExitProcess, [msg.msWPARAM] ; 105. ;************************************************* 106. ; Оконная процедура 107. ;************************************************** 108. WndProc proc uses ebx edi esi, hwnd:DWORD, wmsg:DWORD,\ 109. wparam:DWORD, lparam:DWORD 110. LOCAL hDC:DWORD 111. cmp [wmsg], WM_DESTROY ; посылается оконной процедуре сразу ; же после закрытия окна 112. je wmdestroy 113. cmp [wmsg], WM_SIZE ; посылается оконной процед уре после того, ; как изменился размер окна 114. je wmsize 115. cmp [wmsg], WM_CREATE ; передача оконной процедуре нового ; окна после того , как окно создано, ; но прежде чем окно стало видимым 116. je wmcreate 117. cmp [wmsg],WM_PAINT ; обеспечивают перерисовку окна , когда ; часть или вся рабочая область окна ; становится недействительной 118. je wmpaint 119. cmp [wmsg],WM_VSCROLL ; 120. je wmscroll 121. jmp defwndproc 122. wmcreate : 123. call GetDC ,[ hwnd ] ;дескриптор контекстн ого устройства 124. mov [hDC],eax 125. call GetTextMetricsA,[hDC],offset tm 126. mov ebx,0 127. mov bx,[tm.tmExtLeading] ; межстрочное расстояние 128. add bx ,[ tm . tmHeight ] ;высота (добавка к координате строки ) 129. mov [charht],ebx 130. call ReleaseDC ,[ hwnd ],[ hDC ] ; отказ от контекстного устройства 131. mov eax, 0 132. jmp finish 133. defwndproc: 134. call DefWindowProcA,[hwnd],[wmsg],[wparam],[lparam] 135. jmp finish 136. wmscroll: 137. call GetClientRect ,[ hwnd ], offset rc ;определени е клиентской ; области окна 138. movzx eax ,[ word ptr wparam ] ;преобразование содержимого wparam в ; двойное слово 139. cmp eax,SB_LINEDOWN ; щелчок мыши на стрелке вниз, ; приводит к прокрутке на одну строку ; вниз 140. je sblinedown 141. cmp eax,SB_LI NEUP ; щелчок мыши на стрелке вверх , ; приводит к прокрутке на одну строку ; вверх 142. je sblineup 143. cmp eax,SB_ENDSCROLL ;отпускание любого органа управления ; отпущена клавиша мыши после ; удерживания ее на полосе прокрутки 144. je bp3 145. sbline down: 146. mov [ cyStep ],1 ; прибавить шаг 147. jmp endvscroll_1 148. sblineup: 149. mov [cyStep],-1 150. jmp endvscroll 151. endvscroll: 152. cmp [cyPos],0 153. je bp3 154. endvscroll_1: mov eax,[cyPos] ; посылаем позицию бегунка в ; регистр 155. add eax,[cyStep] 156. mov [cyPos],eax 157. mov eax,0 158. sbb eax ,[ charht ] ;расчет межстрочного расстояния 159. mov ecx,[cyStep] 160. mov edx,0 161. mul ecx 162. mov ecx,eax 163. call ScrollWindow,[hwnd],0,ecx,0,0 ; определяем дескриптор окна , ; где клиентская область должна ; быть прокручена 164. call InvalidateRect ,[ hwnd ], offset rc , TRUE ; определяем окно с ; изменившейся ; областью 165. call SetScrollPos ,[ hwnd ], SB _ VERT ,[ cyPos ], TRUE ;установление ;позиции бегунка в ; стандартной ;вертикальной ; полосе прокрутки 166. call UpdateWindow,[hwnd] ;обновление изображения окна, ; если область не пуста 167. bp3: mov eax,0 168. jmp finish 169. wmdestroy: 170. call PostQuitMessage,0 171. mov eax, 0 172. jmp finish 173. wmsize : ;для перерис овки нового размера окна ;значение старшего слова означает высоту ; клиентской части 174. mov eax ,[ lparam ] 175. mov cl,16 176. rcr eax,cl 177. and eax,0ffffh 178. mov dx,0 179. mov cx,word ptr [charht] 180. div cx 181. movz x ecx,ax 182. mov eax,101 183. sbb eax,ecx 184. cmp eax,0 185. ja www1 186. mov eax,0 187. www1: mov [cyMax],ecx 188. call FindFirstFileA,offset fn,offset w32fd 189. mov [hFindFile],eax 190. mov esi,1 191. s_m4: 192. call FindNextFileA,[hFindFile],offset w32fd 193. cmp eax,0 194. je s_m5 195. inc esi 196. jmp s_m4 197. s_m5: mov [nLast],esi 198. mov eax,[cyMax] 199. cmp eax,[cyPos] 200. ja www2 201. mov [cyPos],eax 202. www2: push FALSE 203. push esi 204. push L 0 205. push SB_VERT 206. push [hwnd] 207. call SetScrollRange 208. push TRUE 209. push [cyPos] 210. push SB_VERT 211. push [hwnd] 212. call SetScrollPos 213. mov eax, 0 214. jmp finish 215. wmpaint: 216. call BeginPain t,[hwnd],offset lppaint ; получили контекст ; устройства 217. mov [ hDC ], eax 218. mov eax ,[ cyPos ] ; начальная позиция бегунка 219. mov ecx,[charht] ;получили координату вывода в пикселях 220. mov dx,0 221. mul cx 222. movzx ecx , ax 223. mov [ c ory ],5 ; занесли по у -5 224. mov ecx ,1 ; занесли по x -1 225. call FindFirstFileA,offset fn,offset w32fd ; отыскиваем ; первый ; файл 226. mov [hFindFile],eax 227. cmp ecx,[cyPos] 228. jne qqq1 229. mov esi,0 230. m 3: mov dl , w 32 fd . cFileName [ esi ] ; отрисовка первой строки 231. cmp dl,0 232. je m2 233. mov buf_v[esi],dl 234. inc esi 235. jmp m3 236. cmp [ cyPos ],0 ; если не ноль , то переход на метку ; qqql 237. jne qqq 1 238. m2: 239. mov [num],esi 240. call TextOutA,[hDC],5,[cory],offset buf_v,[num] ; вывод ;первого ;найденного ; файла 241. qqq 1: mov ebx ,1 242. m6: 243. call FindNextFileA,[hFindFile],offset w32fd ; следующий файл 244. cmp eax ,0 ; проверка для ; последнего файла 245. je kon 246. mov es i,0 247. mov edi,0 248. m4: mov dl,w32fd.cFileName[edi] ; получили имя ; файла 249. cmp dl,0 250. je m5 251. mov buf_v[esi],dl 252. inc edi 253. inc esi 254. jmp m4 255. m5: cmp ebx,[cyPos] 256. jb qqq2 257. mov eax,[charht] 258. add [cory],eax 259. call TextOutA,[hDC],5,[cory],offset buf_v,esi ; вывод ;новой строки 260. qqq 2: inc ebx ;счетчик строк 261. jmp m6 262. kon: call EndPaint,[hwnd],offset lppaint ; отдали ;контекст ; устройства и ;перешли в цикл ;обработки сообщений 263. mov eax ,0 264. jmp finish 265. finish: 266. ret 267. WndProc endp 268. public WndProc 269. end start ; конец программы. Заключение. Моя задача состояла в создании учебной программы , демонстрирующей вывод на экран в графическом режиме заданный каталог со скролингом . С полосами прокрутки связан единственный недостаток , который заключается в том , что приложениями невозможно управлять без мыши . Но так как большинство приложений Windows поддерживают работу с мышью , это вряд ли стоит считать серьезным недостатком . Необходимо было выполнить целый ряд действий , прежде чем приложение смогло адекватно р еагировать на сообщения , посылаемые полосами прокрутки. Библиографический список. Windows 98: руководство разработчика : Пер.с англ . – К .: Издательская группа BHV , 1999. – T .1. – 672 c . Зубков С.В . Asstmbler . Для DOC , Windows Unix . M .: ДМК , 1999. 640 с.
1Архитектура и строительство
2Астрономия, авиация, космонавтика
 
3Безопасность жизнедеятельности
4Биология
 
5Военная кафедра, гражданская оборона
 
6География, экономическая география
7Геология и геодезия
8Государственное регулирование и налоги
 
9Естествознание
 
10Журналистика
 
11Законодательство и право
12Адвокатура
13Административное право
14Арбитражное процессуальное право
15Банковское право
16Государство и право
17Гражданское право и процесс
18Жилищное право
19Законодательство зарубежных стран
20Земельное право
21Конституционное право
22Конституционное право зарубежных стран
23Международное право
24Муниципальное право
25Налоговое право
26Римское право
27Семейное право
28Таможенное право
29Трудовое право
30Уголовное право и процесс
31Финансовое право
32Хозяйственное право
33Экологическое право
34Юриспруденция
 
35Иностранные языки
36Информатика, информационные технологии
37Базы данных
38Компьютерные сети
39Программирование
40Искусство и культура
41Краеведение
42Культурология
43Музыка
44История
45Биографии
46Историческая личность
47Литература
 
48Маркетинг и реклама
49Математика
50Медицина и здоровье
51Менеджмент
52Антикризисное управление
53Делопроизводство и документооборот
54Логистика
 
55Педагогика
56Политология
57Правоохранительные органы
58Криминалистика и криминология
59Прочее
60Психология
61Юридическая психология
 
62Радиоэлектроника
63Религия
 
64Сельское хозяйство и землепользование
65Социология
66Страхование
 
67Технологии
68Материаловедение
69Машиностроение
70Металлургия
71Транспорт
72Туризм
 
73Физика
74Физкультура и спорт
75Философия
 
76Химия
 
77Экология, охрана природы
78Экономика и финансы
79Анализ хозяйственной деятельности
80Банковское дело и кредитование
81Биржевое дело
82Бухгалтерский учет и аудит
83История экономических учений
84Международные отношения
85Предпринимательство, бизнес, микроэкономика
86Финансы
87Ценные бумаги и фондовый рынок
88Экономика предприятия
89Экономико-математическое моделирование
90Экономическая теория

 Анекдоты - это почти как рефераты, только короткие и смешные Следующий
Винни-Пух и Пятачок поступали в институт. Винни-Пух не поступил, а Пятачок поступил по-свински.
Anekdot.ru

Узнайте стоимость курсовой, диплома, реферата на заказ.

Обратите внимание, курсовая по программированию "Вывод на экран текущего каталога в графическом режиме (со скроллингом)", также как и все другие рефераты, курсовые, дипломные и другие работы вы можете скачать бесплатно.

Смотрите также:


Банк рефератов - РефератБанк.ру
© РефератБанк, 2002 - 2016
Рейтинг@Mail.ru