Size: a a a

Ассемблер

2021 August 29

E

Entusiast in Ассемблер
Ну да
источник

ST

Saenro T in Ассемблер
Т.е. там cmp reg, 1 ??
источник

E

Entusiast in Ассемблер
@maplum
Сделал
Почему в лс молчишь?
источник

E

Entusiast in Ассемблер
Где?
источник

ST

Saenro T in Ассемблер
Может там всё таки
False = 0
True ≠ 0
?
источник

E

Entusiast in Ассемблер
Это для оптимизации - можно только проверить на 0, а остальные = TRUE
Но так же можно и:
True = 1
False ≠ 1
Это теперь означает, что False это не 0?
источник

ST

Saenro T in Ассемблер
Так как там проверка происходит?
источник

E

Entusiast in Ассемблер
Я откуда знаю? Как захотели - так и происходит
источник

ST

Saenro T in Ассемблер
Тогда откуда ты знаешь что TRUE это именно 1?
источник

A

Aiwan ╭∩╮ (òÓ,) ╭∩╮b... in Ассемблер
мож все таки обратиться к сишным определениям и стандарту, а уже потом от полученной информации делать выводы как это должно выглядеть на асме?
источник

ST

Saenro T in Ассемблер
Я вот сомневаюсь что там именно CMP reg, 1
источник

E

Entusiast in Ассемблер
Потому что том же MSDN, где написано про эту функцию, есть и страница про BOOL (https://docs.microsoft.com/en-us/cpp/cpp/bool-cpp)
И там написано что BOOL = True или False
А True это 1, False = 0
источник

ST

Saenro T in Ассемблер
Т.е. если в TRUE загнать 2, то это будет FALSE?
источник

E

Entusiast in Ассемблер
Это просто для оптимизации - легче проверить на один 0, и предвидеть все остальные значения как True
источник

d

disba1ancer in Ассемблер
Потому что в винапи так задефайнено
источник

E

Entusiast in Ассемблер
2 в BOOL нет, есть 1, или 0
источник

ST

Saenro T in Ассемблер
О как
источник

A

Aiwan ╭∩╮ (òÓ,) ╭∩╮b... in Ассемблер
всегда думал что 0 - ложь, все что не ноль - правда
источник

d

disba1ancer in Ассемблер
Скорее всего там, либо тест с самим собой, либо cmp с нулём
источник

E

Entusiast in Ассемблер
Там test
источник