ilgizmulukov Опубликовано 17 ноября, 2005 Жалоба Поделиться Опубликовано 17 ноября, 2005 Как я понял у процессора есть три шины:данных,адреса и управления.Но как процессор обрабатывает команды я не понял.Например ему надо сложить два числа находящихся в регистрах.По каким шинам приходят команды которые выполняет процессор?Я слышал,что вроде команды приходят по адресной шине,но тогда как процессор их отличает от простых данных?И вообще подскажите пожалуйста сайты или статьи по подобным вопросам. Ссылка на комментарий Поделиться на другие сайты Поделиться
FlySnake Опубликовано 17 ноября, 2005 Жалоба Поделиться Опубликовано 17 ноября, 2005 Как я понял у процессора есть три шины:данных,адреса и управления.Но как процессор обрабатывает команды я не понял.Например ему надо сложить два числа находящихся в регистрах.По каким шинам приходят команды которые выполняет процессор?Я слышал,что вроде команды приходят по адресной шине,но тогда как процессор их отличает от простых данных?И вообще подскажите пожалуйста сайты или статьи по подобным вопросам. Чтобы сложить два числа в регистрах ему нужна команда сложения, команды находятся в памяти, считать команду можно только зная её адрес. По адоесной шине проц отправляет адрес в память и по сигналу на шине управления считывает команду по этому адресу. Это до безобразия упрощённое описание, чего-нить больше можно посмотреть например в рефератах типа "Архитектура процесоров х86" или в подобной литературе. здесь кое что про них , и здесь есть выбор Ссылка на комментарий Поделиться на другие сайты Поделиться
Тролль Опубликовано 17 ноября, 2005 Жалоба Поделиться Опубликовано 17 ноября, 2005 Команды приходят по шине данных. По адресной шине идут только адреса данных и команд в памяти. Все просто: первая порция данных, полученная с шины данных, интерпретируется как команда, в ней указано, что делать и как получить адрес следующей команды (обычно просто увеличить адрес текущей команды, который хранится в специальном регистре адресов команд, на какое-то число). Когда выполнение текущей команды будет закончено, из регистра адресов команд будет взят адрес следующей команды. То есть процессор, считав команду, говорит себе: "Ага, следующая команда лежит на две ячейки памяти дальше. А пока что я займусь выполнением этой команды." Поэтому процессор может, например, сам себе готовить команды на будущее, записывая их как данные в память, до которой считывание команд доберется позже (сейчас в программировании это считается плохим тоном, но раньше широко применялось для сокращения длины программ). Это так называемая архитектура фон Неймана: команды и данные находятся в общей памяти и ничем, кроме разной интерпретации их процессором по ходу выполнения на основании ранее полученных команд, не отличаются. А на адресной шине всегда находится адрес очередной ячейки памяти, из которой надо считать команду или данные (или куда записать данные; что именно должна делать память, отдавать или записывать данные, определяется сигналом на шине управления). Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения