purebasic.info

PureBasic forum
Текущее время: Сб дек 16, 2017 12:30 am

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ 1 сообщение ] 
Автор Сообщение
 Заголовок сообщения: Функции работы с памятью
СообщениеДобавлено: Чт апр 14, 2016 7:33 pm 
Не в сети
профессор

Зарегистрирован: Пн июл 22, 2013 11:00 pm
Сообщений: 545
Благодарил (а): 2 раз.
Поблагодарили: 30 раз.
Пункты репутации: 9
Собственно в этой теме хотелось рассмотреть различные функции которые реализованы у вас в purebasic для работы с памятью на ассемблере,к примеру:Memory_Word_Len();посчитатать количество символов Юникода(2 байтных)
И функции логических операций для выполнения с данными по адресу памяти.
Код:
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
 
Procedure.l Memory_Word_Len(*r)
!mov eax,[p.p_r]
!hut:
!CMP word ptr eax,0h
!Je rr
!add eax,4
!CMP word ptr eax-2,0h
!Jnz hut
!sub eax,2
!rr:
!SUB eax,[p.p_r]
!SHR eax,1
ProcedureReturn  
!
EndProcedure
Procedure Memory_Dword_OR(*mem,i.i)
  !mov dword esi,[p.p_mem]
  !mov dword eax,[p.v_i]
  !or dword ptr esi,eax
EndProcedure
Procedure Memory_Dword_And(*mem,i.i)
  !mov dword esi,[p.p_mem]
  !mov dword eax,[p.v_i]
  !and dword ptr esi,eax
EndProcedure
 
Procedure Memory_Dword_Xor(*mem,i.i)
  !mov dword esi,[p.p_mem]
  !mov dword eax,[p.v_i]
  !xor dword ptr esi,eax
EndProcedure
 



Вернуться наверх
 Профиль  
 
Показать сообщения за:  Сортировать по:  
Начать новую тему Ответить на тему  [ 1 сообщение ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Создано на основе phpBB® Forum Software © phpBB Group (блог о phpBB)
Сборка создана CMSart Studio
Русская поддержка phpBB