Отправляет email-рассылки с помощью сервиса Sendsay

За 2020-11-15

[prg] Re[5]: работают ли у кого эти функции?

Приветствую всех!

Не бывает шестнадцатеричных или двоичных чисел. Числа бывают целые
(натуральные), вещественные, комплексные и т.п.
Не путайте значение типа int с его символьным представлением.
То, как вы записываете число в своём коде или выводите на экране, это
всего лишь символьное представление числа, но от смены этого
представления значение самого числа не меняется.
В ячейки памяти всегда будет хранится одно и то же значение, не зависимо
от того, как оно отображается на экране.
Пример:
10 -- это десятичное представление;
0x0a -- это шестнадцатеричное представление;
012 -- это восьмеричное представление;
и так далее.
Но во всех случаях значение числа будет одно и то же.
См. описания функций, которые вы представили сами, -- везде возвращаемый
тип int!
То есть вам вернут целочисленное значение типа int, равное младшему
слову значения аргумента (или, что одно и то же, младшим шестнадцати
битам).
Если вы хотите получить шестнадцатеричное представление, то используйте
dectohex().
Для двоичного представления подобную функцию в скриптах JAWS я не
встречал. JAWS вообще не поддерживает двоичное представление целых чисел.

Главное: не надо придумывать того, чего нет в справке. А там нет ни
слова о "шестнадцатеричных" или "двоичных" числах.

А по поводу двух функций? Так вы сами спросили, почему одна пара не
работает...

Успехов. Анатолий.

15.11.2020 18:59, Анатолий Ивашков пишет:
> в справке сказано, что lowWord, отдает младшее слово, т.е например:
> ffff00cb
> отдаст шеснадцатиричное число00cb
> то функция loWordкак я понял отдаст двоичное число
> 0000 0000 1100 1011
> т.е. по битно. а если это не так, то зачем freeDom вводили последнюю
> функцию,
> тем более, что она была заявлена в jaws 6.0
> в отличии от первой функции, которая
> появилась в 7.10 версии.
>

   i_chay 2020-11-15 19:01:18 (#3660881)

[prg] Re[4]: работают ли у кого эти функции?

Здравствуйте, i_chay.

отвечаю на письмо от 15 ноября 2020 г., 7:00:51:

ic> Напомню, что в 16-разрядном представлении целых чисел каждая числовая
ic> позиция занимает 4-бита, то есть 0x0001 --имеет длину 16 бит (т.е.
слово).

это все понятно, но я спрашивал не о том. мне нужен конечный результат. если
в справке сказано, что lowWord, отдает младшее слово, т.е например:
ffff00cb
отдаст шеснадцатиричное число00cb
то функция loWordкак я понял отдаст двоичное число
0000 0000 1100 1011
т.е. по битно. а если это не так, то зачем freeDom вводили последнюю
функцию,
тем более, что она была заявлена в jaws 6.0
в отличии от первой функции, которая
появилась в 7.10 версии.

   2020-11-15 18:00:34 (#3660879)

[prg] Re[3]: работают ли у кого эти функции?

Приветствую всех!
Разрядность Word (слово) составляет 16 бит. действие указанных функций
для целочисленного аргумента (int) эквивалентно.

Можете также сравнит результат работы lowword() и предполагаемый результат работы LoWord() как вы его себе представляете:

var int i = 0xffff0001
sayinteger(lowword(i))
Вы услышите "1", что и является значением 16-ти младших битов переменной i.
Напомню, что в 16-разрядном представлении целых чисел каждая числовая
позиция занимает 4-бита, то есть 0x0001 --имеет длину 16 бит (т.е. слово).

Успехов. Анатолий.

   i_chay 2020-11-15 07:02:39 (#3660860)