Всем привет, появилась такая проблема. В универе по предмету Архитектуры ЭВМ невозможно просто учить это по "его" лекциям и материалу к ним. Поэтому вот пытаюсь найти материал в интернете, которого крайне мало...
Может быть у кого-то лежит следующее в закладках или знаете хорошую книгу? Темы:
1) Mu0-5
2) RISC процессоры на примере ARM
3) x86
4) ijvm (integer java virual machine)
5) Память
6) Системы на чипе
7) Bridge systems and interfaces (строение микропроцессоров, чипсеты, внутренние системы моста, внешние системы моста)
лабораторные же проходят на ARM ассемблере, и то, что у профессора можно найти в материалах - почти нереально делать практические задания. Списывать же тоже вы не выход - завалю экзамены ))
Так что, если кто-то может помоч хорошим материалом, буду очень благодарен. Если же еще и приватно иногда сможете помоч советом по какому-либо заданию(в будущем) буду благодарен в двойне :)
arm-ассемблер стандартный во всех случаях, кроме узкоспецифичных, где могут быть дополнительные команды, а также 64-разрядных систем. Материал сгодится любой. А ещё лучше использовать документацию от arm. Там описаны все команды. x86 - годятся почти все книги, посвящённые ей, даже старые. Зачем вам списывать? Там особо думать нечего. Главное, понимать, как они работают. Пункты с 5-го по 7-й посвящены архитектуре ЭВМ. Но одной книгой, предложенной выше, будет недостаточно.
Михаил Усоцкий: Да, но к примеру то, что нам надо делать в основном ARM7, тот же Intel уже не подойдет никак. Другие архитектуры, - и малейшее изменение может все хорошенько обгадить))
В общем я в жопе хД Ну хотя, сегодня к примеру потратил весь день, сделал пол лабы )))
Есть материал на английском от ARM: ARMv7 -M -A -R (зависит от того, какой именно материал вам нужен) Architecture Refernce Manual - https://web.eecs.umich.edu/~prabal/teaching/eecs37... (например, для микроконтроллеров).
Therapyx: скорее это ассемблер абстрактного процессора. Он объясняет, как это выглядит в компьютере, когда с языка высокого уровня преобразуется в ассемблер, а ассемблер в машинный код.
Ну ARM можно определить, что каждая инструкция всегда условная (для ARMv8 это правило не действует). А так надо сразу по модели процессора узнавать тип набора инструкций.
Михаил Усоцкий: в общем я в жопе))) посмотрел уже контрольные с прошлых годов... хД Эх а как было приятно когда-то просто заниматься веб программированием, не думая о таких вещах ))
Therapyx: не знаю. Это моё любимое: разбираться в архитектуре процессоров, понимать логику узлов и блоков, искать оптимальные решения и так далее. Поэтому я сдавал этот предмет в сессии безо всяких шпаргалок.
Михаил Усоцкий: да когда есть хороший материал и интересный контент я тоже всегда этому рад, но когда дают что-то допотопное, на что почти ничего не найти в интернете - это прото убивает. Когда над какой-нибудь мелочью можно прое... не 1 день.
У меня на фирме к примеру "свой разрабатываемый язык" и есть всего 1 документация. И вот представь, когда пытаешься исправить какую-нибудь ошибку, а информации по ней просто нету. Или же она описана не достаточно корректно или же вообще с ошибкой(что тоже встречалось неоднократно).
И вот то, что нам предоставляют по АРМ7 вообще ни в какие ворота не идет. А то, что есть в интеренете - недостаточно для решение задач, которые делает наш проф,
Вот кстати была недавно лаба)) пока-что еще куда ни шло - написать функцию для конвертирования abc числа в int. Мы сделали ее в 2 цикла - задача решена. Ему видите ли не понравилось это)) сказал, что можно сделать в 1. Ну ок, за пол пары сделали в 1. Ему снова не понравилось, что использовали р8.р9 регистры, ну ок поменяли - это обоснованно)) Потом ему не понравилось, что наша программа в 9 строк, а не в 5. Сказал снова переделывать(ост 20 минут до конца). Итог = провал.
Вообще у этого профа асоциальный % проваленых на экзамене, чтот за 60% переваливает хД Вот поэтому и написал уж на тостере ))
Therapyx: ну... я вообще некоторые только дедуктивным методом разбирал. Один процессор от Ангстрема Тесей, где должен реализовать арифметическое сложение вещественных чисел определённой точности и числа порядка, описан только в двух документах (хоть мне хватило этого с головой, ибо там всё написано). По факту я сделал ещё и для вычитания и умножения (помогал ребятам). Деление досталось ребятам самой сильной группы. Потом писал свой ускоренный вариант Intel i4004 на ПЛИСе с возможностью подключить современные микросхемы памяти, выйдя за физические ограничения до 1 МБ поддержки, если написать соответствующую программу, учитывающую новые особенности. Даже к нему сделал некоторый аналог в виде описания (задача была реализовать функциональный аналог процессора) северного моста с программируемым прерыванием. Стандартный вариант поддерживает только 4 кБ памяти в максимуме и не имел поддержки прерываний. Это я тогда в своё время ещё учился работать с ПЛИСом. Поэтому начинал с самого простого.
Ну документация полная есть, но только на английском. К сожалению, многие у нас не удосуживаются вопросом перевести на русский язык, считая, что мы должны знать английский. А вот американцы, наоборот, перевели все наши работы, и других стран тоже. Поэтому наши должны переводить на русский язык, иначе мы просто себя и других соотечественников просто не уважаем, имея с собственным чсв. А так мы имеем, что есть в доступе.
Ну если профессор считает, что задача реализуема с требуемыми условиями, значит, такое решение есть. Но проблема в том, что он не озвучил требуемые условия выполнения задачи. Без этого задача так и будет затягиваться. А так каждая задача реализуема, если знать все команды процессора.
Вспомнил, кстати. У меня на домашнем сервере есть документации к различным фирмам. Среди них я нашёл таблицу команд ARM7: igorkov.org/pdf/arm1_instrset.pdf
Михаил Усоцкий: о супер!) спасибо 1я и 3ая ссылка думаю помогут хорошо, надо будет хорошенько. Надо будет засесьть на пару дней и разобрать по крайне мере все сокращения и проф. слова. Возможно, да даже скорее всего, из-за этого у меня прибавляется куча проблем))
Гуглом не всегда получается понять, а людей кто это хорошо понимает и может внятно обьяснить вообще единицы... По крайне мере наши студентики нихрена обьяснить не могут хДДДД остается тольо профа задалбывать, а по мелочам беспекоить - нафиг пошлет хД