powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / Где с этим можно ознакомится ?
13 сообщений из 13, страница 1 из 1
Где с этим можно ознакомится ?
    #38506713
Valeriu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Доброго дня !

Давно хотел понять как работают эти конструкции, но не знаю
где можно об этом читать и разобраться.
Примерно такие: S len=$A(len)*16777216+($A(len,2)*65536)+($A(len,3)*256)+$A(len,4)
Спасибо.
...
Рейтинг: 0 / 0
Где с этим можно ознакомится ?
    #38506733
Фотография DAiMor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ValeriuДоброго дня !

Давно хотел понять как работают эти конструкции, но не знаю
где можно об этом читать и разобраться.
Примерно такие: S len=$A(len)*16777216+($A(len,2)*65536)+($A(len,3)*256)+$A(len,4)
Спасибо.а что вас смущает в такой конструкции ? тут только одна функция , а как работает видно из кода.
...
Рейтинг: 0 / 0
Где с этим можно ознакомится ?
    #38506753
Фотография DAiMor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
и судя по всему на входе в переменной len, должна быть последовательность из 4 символов, по типу адреса
...
Рейтинг: 0 / 0
Где с этим можно ознакомится ?
    #38506800
Valeriu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DAiMor,
Хорошо.
А почему именно *16777216 ? ...
...
Рейтинг: 0 / 0
Где с этим можно ознакомится ?
    #38506803
servit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Valeriu ,
Очень похоже наConverts a four-byte string to a number.

$ZLASCII Пример s len="ABCD"
 w $A(len,4)*16777216+($A(len,3)*65536)+($A(len,2)*256)+$A(len,1),!
 w $A(len,4)*256 + $A(len,3)*256 + $A(len,2)*256 + $A(len,1),!
 w $ZLA(len),!

Результат:
Код: plaintext
1.
2.
1145258561
1145258561
1145258561
...
Рейтинг: 0 / 0
Где с этим можно ознакомится ?
    #38506807
servit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ValeriuDAiMor,
Хорошо.
А почему именно *16777216 ? ...(A*256 3 )+(B*256 2 )+(C*256 1 )+(D*256 0 )
...
Рейтинг: 0 / 0
Где с этим можно ознакомится ?
    #38506818
servit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Valeriu ,

Чтобы считало правильно именно по Вашей формуле, нужно только обратить строкуПример s len="ABCD"
 w $A(len)*16777216+($A(len,2)*65536)+($A(len,3)*256)+$A(len,4),!
 w $ZLA($RE(len)),!Результат:
Код: plaintext
1.
1094861636
1094861636
...
Рейтинг: 0 / 0
Где с этим можно ознакомится ?
    #38506826
Valeriu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
servit,
Понятно, спасибо.
У меня старые МСМ-кие API.
При переходе на GT.M никак не могу добиться
получить со стороны клиента переменную равной 1 Мб,
а только 32 Кб ... А хочется пользоваться этой привилегии.
...
Рейтинг: 0 / 0
Где с этим можно ознакомится ?
    #38506845
servit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Valeriu ,

Сlar.
...
Рейтинг: 0 / 0
Где с этим можно ознакомится ?
    #38506903
servit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ValeriuПри переходе на GT.M никак не могу добиться
получить со стороны клиента переменную равной 1 Мб,
а только 32 Кб ... А хочется пользоваться этой привилегии. M String Length

The maximum length of an M string is restricted to 1,048,576 bytes. Therefore, depending on the characters used, the maximum number of characters could be reduced from 1,048,576 (1M) characters to as few as 262,144 (256K) characters.

Database Key and Record Sizes

The maximum allowed size for database keys (both global and nref keys) is 255 bytes, and for database records is 32K bytes. Application developers must be aware that the keys or data containing multi-byte characters in Unicode are limited at a smaller number of characters than the number of available bytes.

Extensions for Unicode™ support
...
Рейтинг: 0 / 0
Где с этим можно ознакомится ?
    #38506982
Alexey Maslov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Valeriu,

на comp.lang.mumps вам сам "отец" GT.M объяснил, почему этого нельзя для файлов.
Для сокетов, очевидно, по той же причине - максимальная длина записи при вводе-выводе.
...
Рейтинг: 0 / 0
Где с этим можно ознакомится ?
    #38507010
Valeriu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexey Maslov,
Я через сокет и M/Wire без проблем посылаю
серверу строку в 1 Мб .
...
Рейтинг: 0 / 0
Где с этим можно ознакомится ?
    #38507022
Valeriu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Прямо из того что проекспериментировал
На VB:
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
Private Sub Command5_Click()
 Dim Ret As String
 Dim cnt As Integer
 Dim a As String
 a = ""
 For cnt = 1 To 10000
 a = a & "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
 Next cnt
 m.DoRoutine "long^res", a, Ret
 MsgBox Ret
End Sub


На GT.Mlong(Inp,Ret)
 s Ret=Inp
 q
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / Где с этим можно ознакомится ?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]