Он красивый , лаконичный и позновательный, а еще у него синтаксис удобнее
Вот как с ним вообще си сравнить , прекрасный loop, крутой регистр ecx, который регулирует количество итераций , красота! А в противовес такой красоте уродливый for цикл ! For(int i; i<count; i++) Просто фу🤢🤢🤢🤮
Который очень не круто используют в fastcall, что лишает его ценности в тех случаях, когда в цикле надо вызывать функцию
А на х64 у тебя нет выбора)
Фаст колл это когда аргументы в регистры кидают?
Да. И на винде это rcx, rdx, r8, r9)
Да, я загуглил
А как по другому?
А что ещё есть в процессоре кроме регистров и памяти?
так в нём же нет памяти в обычном понимании кеш разве что
Честно? Не знаю ( ну вернее в плане что доступно на ассемблере)
много чего, MSR регистры например
Ты шутишь? У него есть EEPROM встроенный, и RAM тоже есть.
А ты на С пишешь?
Не я ваще кодить ненавижу только если готового не существует
А если приходится программировать, на С пишешь?
coreboot не просто так кеш юзает
Такие люди на Си писать не смогут
Я просто хочу убедиться в очередной раз, что Сишники не знают, что такое стек.
я буду удивлен если это правда
Удивляйся.
Ну он точно не сишник
eeprom мапится на часть физической памяти
Ну так что ещё есть в процессоре ?
и в одном из амд манов на болтон есть даже откуда его можно вытащить
Мне вообще пофиг, что там и как работает. У него есть EEPROM, и всё.
Сишник, не знающий про стек - не сишник, имхо.
Я думал это стек это относится к памяти типа праймари
Наоборот. Сишник, знающий про стек - не Сишник.
Насколько я знаю, в стандарте нет понятия "стек", вроде у них это называется автоматическая память или как-то так
- 64 байта внутрисистемно программируемой EEPROM памяти данных, способной выдержать 100 000 циклов записи/стирания - 64 байта встроенной SRAM памяти (статическое ОЗУ)
Блин, а стек это же и есть регистры esp , что за дилемма? Транзистор, помогай
ну это не знаю можно ли считать
Разрешаю. Как я по-твоему на AVR могу обьявить переменную и прочитать её??
А как к этому можно получить доступ? Увидеть вжтвую если можно так выразиться
А я дурак, sp это всего лишь указатель стека
А откуда там EEPROM?
Через чтение порта.
Нет, esp это указатель стека
Он так всегда был, вы шутите что-ли?
? А про какие порты идёт речь
А sp для 16бит не существует?
AtTiny мне как раз этим и нравится, что там есть встроенный EEPROM, и на ассемблере его прочитать - это БУКВАЛЬНО 4 строчки кода.
В плане ты же можешь если что добавить
А на STM32 прочитать EEPROM это танцы с бубном.
Но не адресуется)
В плане? Типа достать нельзя будет?
EEPROM_read: sbic EECR, EEPE rjmp EEPROM_read out EEARL, r25 sbi EECR, EERE in r24, EEDR ret
Кстати, такой цикл для перебора коллекции действительно убогий, потому что вручную считает индексы. Если с ними работать напрямую не надо, то лучше использовать range-based for loop
Так это не четыре
Это четыре, если ты умеешь читать, и знаешь, что там происходит.
Какая мне с этого выгода?
Ну ты же утверждаешь, что 4. Докажи
Зачем мне тебе что-то доказывать?
Я тебя услышал
Если мы говорим чисто про стандарт в вакууме, то да, там нет такого понятия. С согласно стандарту выполняется не на какой-то архитектуре, а в асбтрактной машине С. Соответственно, там не описываются разные соглашения о вызовах, спецификации железа, наличие стека\кучи. Подразумевается, что может быть особо всратая архитектура, где такого просто нет. На практике, конечно, все есть, но стандарт в вакууме не обязывает
Кстати, интересно, существовали ли такие архитектуры в принципе? Чтобы стека не было вообще
С фиксированным стеком есть восьмибитки и DSP. Ну типа три уровня в регистрах, а переменные либо глобальные, либо софтварный стек.
Прикольно. Но всякая экзотика на то и экзотика
Чем докажешь?
Положи на С в стек какое-то значение.
main .... int f = 67
Где?
push dword 10
Это что за команда?
68 0a 00 00 00
Это что?
Кто?
Где в С прямое обращение к стеку?
Куда?
Обсуждают сегодня