Страница 794 из 819 ПерваяПервая ... 294694744784792793794795796804 ... ПоследняяПоследняя
Показано с 7,931 по 7,940 из 8184

Тема: ВОПРОС-ОТВЕТ (отвечаем на простые вопросы от новичков)

  1. #7931

    По умолчанию

    Тогда перед сдвигом накладывайте битовую маску с установленным нужным битом и сравнивайте с нулем. Например для байта:
    ...
    a := b and 127;
    if a = 0 then
    что-то делаете;
    else
    делаете что-то другое;
    end_if
    b := shl(b, 1);
    ...

  2. #7932

    По умолчанию

    saii О! Спасибо!!!

  3. #7933

    По умолчанию

    Всем привет! подскажите, почему не работает?

    var
    test_pointer: POINTER TO BOOL;
    word1: WORD := 1;
    bool1: BOOL;
    end_var
    test_pointer := BITADR(word1.0);
    bool1 := test_pointer^;

    Смысл в том, что хочу одно словечко в модбасе сделать как маску дискретных настроек, и чтобы было красиво в коде, а не mb_settings.0

  4. #7934

    По умолчанию

    Цитата Сообщение от Raikkonen Посмотреть сообщение
    Всем привет! подскажите, почему не работает?

    var
    test_pointer: POINTER TO BOOL;
    word1: WORD := 1;
    bool1: BOOL;
    end_var
    test_pointer := BITADR(word1.0);
    bool1 := test_pointer^;

    Смысл в том, что хочу одно словечко в модбасе сделать как маску дискретных настроек, и чтобы было красиво в коде, а не mb_settings.0
    Какой толк "городить" на автомобиль крылья от самолета, если он все равно будет только ездить?
    Последний раз редактировалось Spawn; 06.08.2020 в 01:52.

  5. #7935

    По умолчанию

    а в кодэсисе нет ни чего похожего на definne?

  6. #7936

    По умолчанию

    Цитата Сообщение от capzap Посмотреть сообщение
    поиск не пробовали использовать
    поиск по форуму, по-моему это нечто невозможное. Нужно отдельную инструкцию страниц на 100 как отсеять мусор.
    Ну я так понял дефайна нет. Жаль, в алене в бредлине есть.
    Цель прежняя - обращаться к биту в слове не через "." а через какое-то наименование

  7. #7937

    По умолчанию

    var
    uno: pointer to bool := mb_settings.0;
    end_var

    if uno^ then (*что-нибудь*) else (*например*) end_if;
    Последний раз редактировалось Raikkonen; 06.08.2020 в 10:02.

  8. #7938

    По умолчанию

    а вот эта штучка чудесная "^" шо делает ?

  9. #7939

    По умолчанию

    все это для того чтобы в коде было удобно смотреть на "setiings_1^" вместо "mb_settings.0".
    Вот я и расстроен что с булевыми так не работает, а очень уж хочется. Отсюда собственно и вопрос - можно ли как-то сделать то что мне нужно

  10. #7940
    Пользователь Аватар для capzap
    Регистрация
    25.02.2011
    Адрес
    Киров
    Сообщений
    10,792

    По умолчанию

    Цитата Сообщение от Raikkonen Посмотреть сообщение
    "setiings_1^" вместо "mb_settings.0"
    оба этих названия обезличены, не несут ни какой информативности что это
    если вместо нуля подставите константу как я показывал вот тогда будет удобнее во много раз mb_settings.start или mb_settings.stop
    Bad programmers worry about the code. Good programmers worry about data structures and their relationships

Страница 794 из 819 ПерваяПервая ... 294694744784792793794795796804 ... ПоследняяПоследняя

Метки этой темы

Ваши права

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