0 / 0 / 0
Регистрация: 19.01.2010
Сообщений: 62
|
|
1 | |
Какими способами в ассамблере,c++ читать не весь файл а только его часть?08.03.2010, 16:48. Просмотров 923. Ответов 6
Метки нет Все метки)
(
Насколько я понимаю Mysql как раз на этом и основан,что знает позиции на жестком диске,и кое-что загружает в оперативную память.А вот какими именно функциями это происходит?В принципе без разнице на каком языке.Мне просто максимальная скорость доступа к данным с жесткого диска,чтобы не весь файл загружать в оперативную память а только часть которую нужно изменить
0
|
|
08.03.2010, 16:48 | |
Как сделать что бы весь калькулятор выводился сразу, а не только верхняя его часть?
Как переписать не весь файл, а только его отдельные строки Какими только способами не пробовал сделать поиск по базе, ничего не помогает |
|
247 / 205 / 26
Регистрация: 03.02.2009
Сообщений: 786
|
|
08.03.2010, 16:58 | 2 |
В ассемблере, например, есть такие функции:
3DH = Open File 3EH = Close File 3FH = Read File 40H = Write File 42H = Set File Pointer
1
|
2530 / 826 / 10
Регистрация: 31.05.2009
Сообщений: 1,669
|
|
08.03.2010, 17:26 | 3 |
Эти функции существуют в ОС МС-ДОС. Мне почему-то кажется, что Eggman требуется программа для винды
![]() Тут вобщем-то без разницы на каком языке писать. Скорость чтения жесткого диска не изменится от того, что вы будете использовать асм.
1
|
247 / 205 / 26
Регистрация: 03.02.2009
Сообщений: 786
|
|
08.03.2010, 17:31 | 4 |
Какой вопрос - такой ответ!
1
|
2530 / 826 / 10
Регистрация: 31.05.2009
Сообщений: 1,669
|
|
08.03.2010, 17:38 | 5 |
Тогда уж лучше сказать, что в ассемблере нет вообще никаких готовых функций и чтение реализуется системными вызовами ОС.
1
|
![]() ![]() |
|
08.03.2010, 17:54 | 6 |
Eggman, если не в облом читать много букв, то здесь есть примитивное пояснения на пальцах. Конкретно тебе нужен третий абзац.
Если тебе с точки зрения конкретного программирования, то почитай про низкоуровневые функции работы с файлами: read, write, seek. Правда если тебе нужен ещё более низкий уровень (непосредственно к секторам диска), то тут даже и не знаю, что посоветовать - надо курить мануалы по файловым системам, и искать, есть ли какие переносимые средства для этого на уровне языков программирования. Правда обращение к секторам непосредственно (по сравнению с низкоуровневой работой, но в терминах "файл") скорость это сильно скорее всего не увеличит - львиную долю времени будет занимать непосредственно обращение к устройству
1
|
68 / 24 / 2
Регистрация: 16.05.2009
Сообщений: 73
|
|
18.03.2010, 06:18 | 7 |
у Win32 есть функция:
DWORD SetFilePointer(HANDLE hFile, LONG lDistanceToMove, PLONG lpDistanseToMoveHigh,DWORD dwMoveMethod) Она делает все что нужно
0
|
18.03.2010, 06:18 | |
Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |