Pull to refresh
263.5
Karma
0
Rating
Владимир @32bit_me

Программист

  • Followers 284
  • Following 3

15 лучших аудиосистем из популярных фильмов

Лара Крофт, расхитительница гробниц.

Лунный звездный месяц (27.32 дней), лунный месяц по фазам Луны (29.5306 дней) в радиоактивном распаде

Лунные месяцы в радиоакивном распаде. На Хабре. Дожили.

Что дальше будет? Влияние знаков Зодиака на рост телеграфных столбов?

Вопросы на собеседовании безопасника

Кем вы себя видите через пять лет? Почему выбрали именно нашу компанию?

Культура трудоустройства

"Вредные советы" - жанр крайне глупый, несмешной и давно надоевший до изжоги.

Не пользуйтесь им, пожалуйста.

Исследование: 59 % рекрутеров отказывали соискателям в работе из-за внешности

Ничего особенного я в этих советах не вижу. Готовьтесь к каждому интервью, внимательно изучите требования вакансии, задавайте вопросы - что не так?

Ассемблер RISC-V для начинающих

Я не буду разводить бессмысленных дискуссий, но данные относительно pc не хранятся ни в одной архитектуре. Предлагаю на этом закончить.

Ассемблер RISC-V для начинающих

Но почему данные должны храниться относительно pc? Есть инструкция вида LW rd, imm(rs). Если мы загружаем константу (а мы же говорим о константах, да?), то они лежат обычно в секции .rodata, по фиксированному адресу.

Кэш ускоряет работу с памятью, но хорошей практикой считается как можно меньше трогать память, и выполнять всё, что можно, на регистрах. Отсюда и замена lw/ld длинными цепочками команд, вычисляюших константы в рантайме.

Ассемблер RISC-V для начинающих

Загрузка из памяти, это одна инструкция. В современном мире загрузка из памяти - это самая медленная операция, и может занимать сотни тактов. Зависит от попадания в кэш.

Ассемблер RISC-V для начинающих

64-битная версия выглядит практически так же, но добавлены команды для загрузки и сохранения 64-битных чисел и некоторые другие.
Пример:

long long foo() {

    return 0x1122334455667788LL;

}
foo():                                # @foo()
        lui     a0, 1097
        addiw   a0, a0, -1843
        slli    a0, a0, 14
        addi    a0, a0, 1109
        slli    a0, a0, 12
        addi    a0, a0, 1639
        slli    a0, a0, 12
        addi    a0, a0, 1928
        ret

Здесь в a0 загружается 64-битная константа. Главным образом используются сложения и сдвиги. Это несколько громоздко, но иначе придётся делать загрузку константы из памяти, а это нежелательно.

Ассемблер RISC-V для начинающих

Сейчас на ядро Risc V перешли в своей продукции компании MIPS, Western Digital, и ряд других крупных компаний имеют такие планы.

Пока на рынке мало микросхем, но кое-что есть. Есть аналоги STM32 на RISCV, есть чипы SiFive, скоро выйдет одноплатник от Beaglebone.

Ассемблер RISC-V для начинающих

Нет, в железо ничего не переведено, это остаётся просто соглашением, и вы можете использовать какое-то другое соглашение для своих проектов. Однако это соглашение является стандартным и изменять его без необходимости не нужно.

Ассемблер RISC-V для начинающих

Это на самом деле очень удобно, его можно использовать везде, где один из операндов равен нулю. Один из наиболее очевидных примеров использования: add rd, rs, zero - переносит rs в rd, что заменяет команду mov, необходимую в других архитектурах.

Правда о мозге Бендера

Что-то даже не знаю, кому в начале 90-х было интересно Радио 86 РК, когда спектрумы не собирал только ленивый.

Правда о мозге Бендера

Насколько я знаю, нет.

Правда о мозге Бендера

В оригинале было слово ill-tempered, я затрудняюсь перевести его дословно. Будем считать, что Бендер безумен в хорошем смысле.

Китайская компания Loongson Technology разработала с нуля новую процессорную архитектуру

Ребята, которые пилят мультиклет, нахамили мне в лицо, когда я предложил запилить компилятор на LLVM. В их поделии нет ничего такого, что нельзя было бы запилить в LLVM. Если вы посмотрите в существующие бэкенды LLVM, там есть действительно нетипичные архитектуры, и ничего, всё работает.

Научная гипотеза происхождения Карлсона

Устройства левитации, как у барона Харконена.

Information

Rating
3,624-th
Date of birth
Registered
Activity