Какой сегментный регистр используется по умолчанию?
Я изучаю компьютерную архитектуру из Руководства Intel. Я понимаю, что инструкции, которые мы даем, являются логическими адресами, которые состоят из селектора сегмента и смещения. Это в основномCS register<<4 + offset
.Segment Selector
сопоставляется с GDT или LDT как указано вTI
бит селектора сегмента. GDT состоит изSegment Descriptors
который имеетBASE
, LIMIT
а такжеRPL
и вывод является базовым адресом. Этоbase address
+ offset
обеспечиваетlogical address
.
Какие правила определяют, какой сегмент регистрировать SS
, DS
и т. д.) относится к разным операциям с памятью? например что определяет, какой сегмент используется дляmov eax, [edi]
?