 |
Переводы Переводы туториалов и хелпов. |
03.09.2005, 21:39
|
#1
|
|
Полный перевод раздела Command Reference -> 2D-Category -> Bank из стандартного хелпа Blitz.
|
|
|
03.09.2005, 21:42
|
#2
|
|
CreateBank ([размер])
Параметры
размер = размер банка памяти в байтах (по умолчанию 0 байт)
Описание
Команды по работе с банком памяти обеспечивают скоростные операции с данными в блоке памяти. Это полезно для написания ваших собственных программ сжатия/распаковки, для отправки/получения данных в/из DLL и т.д. Начало банка памяти - 0, его конец – при размере -1.
Типы данных, доступные для использования с банком памяти:
Byte – занимает один байт. Значения могут быть в диапазоне от 0 до 255.
Short – занимает два байта. Значения могут быть в диапазоне от 0 до 65535.
Int – занимает четыре байта. Значения могут быть в диапазоне от -2147483647 до 2147483647.
Float – занимает четыре байта.
См. также: FreeBank.
Пример
; Пример команд по работе с банком памяти
; ---------------------
bnkTest=CreateBank(12)
PokeByte bnkTest,0,Rand(255)
PokeShort bnkTest,1,Rand(65535)
PokeInt bnkTest,3,Rand(-2147483648,2147483647)
PokeFloat bnkTest,7,0.5
Print PeekByte(bnkTest,0)
Print PeekShort(bnkTest,1)
Print PeekInt(bnkTest,3)
Print PeekFloat(bnkTest,7)
FreeBank bnkTest
|
|
|
03.09.2005, 21:42
|
#3
|
|
FreeBank банк_памяти
Параметры
банк_памяти = указатель на банк памяти
Описание
Отсутствует.
См. также: CreateBank.
Пример
; Пример команд по работе с банком памяти
; ---------------------
bnkTest=CreateBank(12)
PokeByte bnkTest,0,Rand(255)
PokeShort bnkTest,1,Rand(65535)
PokeInt bnkTest,3,Rand(-2147483648,2147483647)
PokeFloat bnkTest,7,0.5
Print PeekByte(bnkTest,0)
Print PeekShort(bnkTest,1)
Print PeekInt(bnkTest,3)
Print PeekFloat(bnkTest,7)
FreeBank bnkTest
|
|
|
03.09.2005, 21:43
|
#4
|
|
BankSize (указатель_на_банк_памяти)
Параметры
указатель_на_банк_памяти = указатель, назначенный банку памяти при его создании
Описание
Используйте эту команду, чтобы определить размер существующего банка памяти.
См. также: CreateBank, ResizeBank, CopyBank.
Пример
; BankSize, ResizeBank, CopyBank – пример использования
; Создать банк памяти
bnkTest=CreateBank(5000)
; Заполнить случайными integer-числами
For t = 0 To 4999
PokeByte bnkTest,t,Rand(9)
Next
; Изменить размер банка памяти
ResizeBank bnkTest,10000
; Скопировать первую половину банка памяти во вторую
CopyBank bnkTest,0,bnkTest,5000,5000
; Отобразить окончательный размер банка памяти
Print BankSize(bnkTest)
|
|
|
03.09.2005, 21:43
|
#5
|
|
ResizeBank указатель_на_банк_памяти, новый_размер
Параметры
указатель_на_банк_памяти = указатель, назначенный банку памяти при его создании
новый_размер = новый размер банка памяти в байтах
Описание
Изменяет размер ранее созданного банка памяти. Существующие данные банка памяти не могут быть изменены, но могут быть перемещены в память.
См. также: CreateBank, CopyBank, BankSize.
Пример
; BankSize, ResizeBank, CopyBank – пример использования
; Создать банк памяти
bnkTest=CreateBank(5000)
; Заполнить случайными integer-числами
For t = 0 To 4999
PokeByte bnkTest,t,Rand(9)
Next
; Изменить размер банка памяти
ResizeBank bnkTest,10000
; Скопировать первую половину банка памяти во вторую
CopyBank bnkTest,0,bnkTest,5000,5000
; Отобразить окончательный размер банка памяти
Print BankSize(bnkTest)
|
|
|
03.09.2005, 21:44
|
#6
|
|
CopyBank исходный_банк_памяти, исходное_смещение, конечный_банк_памяти, конечное_смещение, количество
Параметры
исходный_банк_памяти = указатель на исходный банк памяти
исходное_смещение = смещение позиции, с которой начинать копирование
конечный_банк_памяти = указатель на конечный банк памяти
конечное_смещение = смещение позиции, с которой начинать запись
количество = сколько байт копировать
Описание
Копирует данные из одного банка памяти в другой. Если копирование происходит между одним и тем же банком памяти, может произойти выход за пределы границ памяти.
Пример
; BankSize, ResizeBank, CopyBank – пример использования
; Создать банк памяти
bnkTest=CreateBank(5000)
; Заполнить случайными integer-числами
For t = 0 To 4999
PokeByte bnkTest,t,Rand(9)
Next
; Изменить размер банка памяти
ResizeBank bnkTest,10000
; Скопировать первую половину банка памяти во вторую
CopyBank bnkTest,0,bnkTest,5000,5000
; Отобразить окончательный размер банка памяти
Print BankSize(bnkTest)
|
|
|
03.09.2005, 21:45
|
#7
|
|
PeekByte(банк_памяти, смещение)
Параметры
банк_памяти = указатель на банк памяти
смещение = смещение в байтах, с которого начнется выполнение операции Peek
Описание
Считывает байт из банка памяти и возвращает значение.
Байт занимает один байт в банке памяти. Значения могут быть в диапазоне от 0 до 255.
См. также: PeekShort, PeekInt, PeekFloat.
Пример
; Пример команд по работе с банком памяти
; ---------------------
bnkTest=CreateBank(12)
PokeByte bnkTest,0,Rand(255)
PokeShort bnkTest,1,Rand(65535)
PokeInt bnkTest,3,Rand(-2147483648,2147483647)
PokeFloat bnkTest,7,0.5
Print PeekByte(bnkTest,0)
Print PeekShort(bnkTest,1)
Print PeekInt(bnkTest,3)
Print PeekFloat(bnkTest,7)
FreeBank bnkTest
|
|
|
03.09.2005, 21:45
|
#8
|
|
PeekShort(банк_памяти, смещение)
Параметры
банк_памяти = указатель на банк памяти
смещение = смещение в байтах, с которого начнется выполнение операции Peek
Описание
Считывает short integer значение из банка памяти и возвращает значение.
Short integer занимает два байта в банке памяти. Значения могут быть в диапазоне от 0 до 65535.
См. также: PeekByte, PeekInt, PeekFloat.
Пример
; Пример команд по работе с банком памяти
; ---------------------
bnkTest=CreateBank(12)
PokeByte bnkTest,0,Rand(255)
PokeShort bnkTest,1,Rand(65535)
PokeInt bnkTest,3,Rand(-2147483648,2147483647)
PokeFloat bnkTest,7,0.5
Print PeekByte(bnkTest,0)
Print PeekShort(bnkTest,1)
Print PeekInt(bnkTest,3)
Print PeekFloat(bnkTest,7)
FreeBank bnkTest
|
|
|
03.09.2005, 21:46
|
#9
|
|
PeekInt(банк_памяти, смещение)
Параметры
банк_памяти = указатель на банк памяти
смещение = смещение в байтах, с которого начнется выполнение операции Peek
Описание
Считывает integer значение из банка памяти и возвращает значение.
Integer занимает четыре байта в банке памяти. Значения могут быть в диапазоне от -2147483647 до 2147483647.
См. также: PeekByte, PeekShort, PeekFloat.
Пример
; Пример команд по работе с банком памяти
; ---------------------
bnkTest=CreateBank(12)
PokeByte bnkTest,0,Rand(255)
PokeShort bnkTest,1,Rand(65535)
PokeInt bnkTest,3,Rand(-2147483648,2147483647)
PokeFloat bnkTest,7,0.5
Print PeekByte(bnkTest,0)
Print PeekShort(bnkTest,1)
Print PeekInt(bnkTest,3)
Print PeekFloat(bnkTest,7)
FreeBank bnkTest *
|
|
|
03.09.2005, 21:46
|
#10
|
|
PeekFloat(банк_памяти, смещение)
Параметры
банк_памяти = указатель на банк памяти
смещение = смещение в байтах, с которого начнется выполнение операции Peek
Описание
Считывает float значение из банка памяти и возвращает значение.
Float занимает четыре байта в банке памяти.
См. также: PeekByte, PeekShort, PeekInt.
Пример
; Пример команд по работе с банком памяти
; ---------------------
bnkTest=CreateBank(12)
PokeByte bnkTest,0,Rand(255)
PokeShort bnkTest,1,Rand(65535)
PokeInt bnkTest,3,Rand(-2147483648,2147483647)
PokeFloat bnkTest,7,0.5
Print PeekByte(bnkTest,0)
Print PeekShort(bnkTest,1)
Print PeekInt(bnkTest,3)
Print PeekFloat(bnkTest,7)
FreeBank bnkTest *
|
|
|
03.09.2005, 21:47
|
#11
|
|
PokeByte банк_памяти, смещение, значение
Параметры
банк_памяти = указатель на банк памяти
смещение = смещение в байтах, с которого начнется выполнение операции Poke
значение = значение, которое будет записано в банк памяти
Описание
Записывает байт в банк памяти.
Байт занимает один байт в банке памяти. Значения могут быть в диапазоне от 0 до 255.
См. также: PokeShort, PokeInt, PokeFloat.
Пример
; Пример команд по работе с банком памяти
; ---------------------
bnkTest=CreateBank(12)
PokeByte bnkTest,0,Rand(255)
PokeShort bnkTest,1,Rand(65535)
PokeInt bnkTest,3,Rand(-2147483648,2147483647)
PokeFloat bnkTest,7,0.5
Print PeekByte(bnkTest,0)
Print PeekShort(bnkTest,1)
Print PeekInt(bnkTest,3)
Print PeekFloat(bnkTest,7)
FreeBank bnkTest
|
|
|
03.09.2005, 21:49
|
#12
|
|
PokeShort банк_памяти, смещение, значение
Параметры
банк_памяти = указатель на банк памяти
смещение = смещение в байтах, с которого начнется выполнение операции Poke
значение = значение, которое будет записано в банк памяти
Описание
Записывает short значение в банк памяти.
Short занимает два байта в банке памяти. Значения могут быть в диапазоне от 0 до 65535.
См. также: PokeByte, PokeInt, PokeFloat.
Пример
; Пример команд по работе с банком памяти
; ---------------------
bnkTest=CreateBank(12)
PokeByte bnkTest,0,Rand(255)
PokeShort bnkTest,1,Rand(65535)
PokeInt bnkTest,3,Rand(-2147483648,2147483647)
PokeFloat bnkTest,7,0.5
Print PeekByte(bnkTest,0)
Print PeekShort(bnkTest,1)
Print PeekInt(bnkTest,3)
Print PeekFloat(bnkTest,7)
FreeBank bnkTest
|
|
|
03.09.2005, 21:51
|
#13
|
|
PokeInt банк_памяти, смещение, значение
Параметры
банк_памяти = указатель на банк памяти
смещение = смещение в байтах, с которого начнется выполнение операции Poke
значение = значение, которое будет записано в банк памяти
Описание
Записывает integer значение в банк памяти.
Integer занимает четыре байта в банке памяти. Значения могут быть в диапазоне от -2147483647 до 2147483647.
См. также: PokeByte, PokeShort, PokeFloat.
Пример
; Пример команд по работе с банком памяти
; ---------------------
bnkTest=CreateBank(12)
PokeByte bnkTest,0,Rand(255)
PokeShort bnkTest,1,Rand(65535)
PokeInt bnkTest,3,Rand(-2147483648,2147483647)
PokeFloat bnkTest,7,0.5
Print PeekByte(bnkTest,0)
Print PeekShort(bnkTest,1)
Print PeekInt(bnkTest,3)
Print PeekFloat(bnkTest,7)
FreeBank bnkTest
|
|
|
03.09.2005, 21:51
|
#14
|
|
PokeFloat банк_памяти, смещение, значение
Параметры
банк_памяти = указатель на банк памяти
смещение = смещение в байтах, с которого начнется выполнение операции Poke
значение = значение, которое будет записано в банк памяти
Описание
Записывает float значение в банк памяти.
Float занимает четыре байта в банке памяти.
См. также: PokeByte, PokeShort, PokeInt.
Пример
; Пример команд по работе с банком памяти
; ---------------------
bnkTest=CreateBank(12)
PokeByte bnkTest,0,Rand(255)
PokeShort bnkTest,1,Rand(65535)
PokeInt bnkTest,3,Rand(-2147483648,2147483647)
PokeFloat bnkTest,7,0.5
Print PeekByte(bnkTest,0)
Print PeekShort(bnkTest,1)
Print PeekInt(bnkTest,3)
Print PeekFloat(bnkTest,7)
FreeBank bnkTest
|
|
|
Ваши права в разделе
|
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 16:46.
|