Size: a a a

Ассемблер

2021 June 13

D

Den in Ассемблер
хотя если попробовать подогнать пи к целому возможно не смотря на нецелое периметра квадрата целой станет скажем скорость света? или что то еще что сейчас считается иррациональным числом, кажется так это называется
источник

D

Den in Ассемблер
и окажется что правильно называть сантиметром не 10 миллиметров а 9.2 скажем и с миллиметром тоже самое
источник

d

disba1ancer in Ассемблер
Это получится какая-то другая математика, потому для вселенных рекомендую ограничится классическими математическими представлениями
источник

D

Den in Ассемблер
да это просто мысли в слух, задумался как то об этом когда переводил фарады в ампер часы, что люди сами себе выдумывают системы счисления а потом может оказаться что они изначально кривые но уже ничего не поделаешь т.к. прошли века и написаны тонны литературы аксиом и доказательств
источник

d

disba1ancer in Ассемблер
Они не кривые, просто константы для перевода в единицы вселенной окажутся несколько странными
источник

АШ

Алексей Шведов... in Ассемблер
Нужно затереть память нулями.
Что будет быстрее:
mov esi, @clearState ; db sizeof.SYSTEM_DATA dup(0x00)
mov edi, systemData
mov ecx, sizeof.SYSTEM_DATA
rep movsb

Или

mov ecx, sizeof.SYSTEM_DATA
@ClearData:
mov byte[systemData+ecx], 0x00
loop
@ClearData
источник

s

s54816 in Ассемблер
Для начала стоит выяснить, не кратен ли размер 4, и если да, то подумать о rep stosd.
источник

d

disba1ancer in Ассемблер
xor eax,eax
mov edi, systemData
mov ecx, sizeof.SYSTEM_DATA / 4
rep stosd
источник

D

Den in Ассемблер
слышал что loop медлнный вроде
источник

АШ

Алексей Шведов... in Ассемблер
А если кратен?
источник

d

disba1ancer in Ассемблер
Ну и учесть комментарий @s54816
источник

s

s54816 in Ассемблер
Можно забить по 4, сколько есть, а остатки rep stosb. Ой. То есть это если НЕ кратен. А если кратен, то stosd хватит.
источник

d

disba1ancer in Ассемблер
Если кратен юзай мой код, но можно и быстрее
источник

АШ

Алексей Шведов... in Ассемблер
Хм, а loop правда медленный? Получается, такая замена быстрее будет?:

xor ecx, ecx
@SomeCode:
inc ecx
cmp ecx, SomeConstant
jne @SomeCode
источник

d

disba1ancer in Ассемблер
На x64 можно вообще по 8 байт обнулять
источник

A

Aiwan ╭∩╮ (òÓ,) ╭∩╮b... in Ассемблер
бери больше, по 64
источник

d

disba1ancer in Ассемблер
Это если симд юзать
источник

d

disba1ancer in Ассемблер
Хотя он там вроде вегда есть
источник

d

disba1ancer in Ассемблер
Но с симд репу придётся почесать
источник

АШ

Алексей Шведов... in Ассемблер
Что насчёт этого?
источник