Size: a a a

2020 August 25

EG

Emmanuel Goldstein in rust_offtopic
Через ту же самую последовательность инструкций, но не прокачивать её через оперативу
источник

EG

Emmanuel Goldstein in rust_offtopic
А, потому что этот прикол работает только с константой
источник

b

badtrousers in rust_offtopic
угу
источник

b

badtrousers in rust_offtopic
тут же вся суть делить на 513
источник

b

badtrousers in rust_offtopic
попробуй делить на 512 будет еще меньше портянка
источник

b

badtrousers in rust_offtopic
деление на 2 это вообще просто 1 сдвиг
источник

b

badtrousers in rust_offtopic
и так дальше
источник

EG

Emmanuel Goldstein in rust_offtopic
Целочисленное деление на 512 это ж тоже один сдвиг?..
источник

b

badtrousers in rust_offtopic
а вот нет
источник

EG

Emmanuel Goldstein in rust_offtopic
        lea     rax, [rdi + 511]
       test    rdi, rdi
       cmovns  rax, rdi
       sar     rax, 9
       ret

лол что
источник

b

badtrousers in rust_offtopic
источник

b

badtrousers in rust_offtopic
источник

b

badtrousers in rust_offtopic
ну ты понял)
источник

EG

Emmanuel Goldstein in rust_offtopic
Я не понимаю, что тут происходит
источник

b

badtrousers in rust_offtopic
ты думаешь я понимаю?
источник

EG

Emmanuel Goldstein in rust_offtopic
Почему деление на 512 это не просто шифт на 9?
источник

EG

Emmanuel Goldstein in rust_offtopic
Зачем происходят эти странные вещи?
источник

b

badtrousers in rust_offtopic
судя по всему, шифт это сильно дорогая инструкция…
источник

b

badtrousers in rust_offtopic
😄
источник

EG

Emmanuel Goldstein in rust_offtopic
Так он всё равно делает шифт
источник