Цитата Сообщение от kondor3000 Посмотреть сообщение
Да не лимиты режут, а число отображается как больше чем 65535. Вот что у вас происходит 1 Отображения числа.jpg Отображается младший регистр из 2, так как в Лоджике нет 16 битного WORD (UINT), а только 32 битное UDINT (DWORD)

Цитата Сообщение от Dimensy Посмотреть сообщение
Никто ничего не режет. Сетевая переменная 16 битная, поэтому и на экран выводится только 16 бит

Коллеги, я это все понимаю , но
1. На экране переменная должна отображаться правильно - Достоверно
Для этого надо отображать на экране поля всегда в 32 битном виде, тогда все предложенные и вами и мной варианты будут видны корректно.
Зависимости от ширины переменной , не нужно вообще.

2. Лимит поля должен отрабатывать не на отображение , а на событие изменения данных.

3. В идеальном варианте , обработчик программы , должен автоматом обрезать заведомо 16 битное значение до 65535.
И в примере , когда пишем константу 70000 в одиночный регистр либо вообще не давать грузить такой код, либо динамически делать 70000->65535

Тоже самое в примере со счетчиком, который сетевая переменная. Он должен досчитать до 65535 и остановится на этом.
Тогда все везде будет по людски, и никто не ошибется.