Определение индекса филиала в таблице прогнозов - PullRequest
0 голосов
/ 04 марта 2019

Мне нужно преобразовать старшие n битов битов индекса (ПК) в младшие n битов битов индекса (ПК) в c ++.

Вот код для старших n битов индекса (ПК)) биты;

PCmask_gshare = (1073741823 >> ( 30 - (index_bits_gshare - history_bits)) );        //For m-n bits in gshare

Hmask = (1073741823 >> (30 - history_bits) );   //For n bits in gshare.

p = history_table ^ ( (address >> ( 2 + index_bits - history_bits)) & Hmask );

index = (p << (index_bits - history_bits)) + ((address >> 2) & PCmask_gshare );

Как я могу преобразовать это в младшие n бит (history_bits)?

...