In 8086, 20-bit address is generated with two 16-bit registers by using segmentation. The first 16bit address is multiplied by 10 and the result will be added to second 16bit address. when multiplied by 10 it will generate a 5digit HEXA number which is 20bit long. where will this intermediate result of 20bit (obtained when multiplied by 10) be stored?

有帮助吗?

解决方案

Nowhere. The address appears on the corresponding pins (AD0-AD19) of the chip when it needs to access memory. The calculation is performed internally with dedicated logic. For example there is no actual multiplication by 0x10: the segment bits are directly paired to higher-numbered bits of the offset in corresponding adder (item 3 here).

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top