Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10 5/3/83; site intelca.UUCP Path: utzoo!watmath!clyde!burl!ulysses!mhuxj!ihnp4!zehntel!dual!amd!intelca!wizard From: wizard@intelca.UUCP (Kevin Supinger) Newsgroups: net.micro.pc Subject: Re: 80286 microprocessor problems Message-ID: <457@intelca.UUCP> Date: Fri, 30-Nov-84 14:23:19 EST Article-I.D.: intelca.457 Posted: Fri Nov 30 14:23:19 1984 Date-Received: Sun, 2-Dec-84 03:46:31 EST Distribution: net Organization: Intel, Santa Clara, Ca. Lines: 45 Here we go again with more astounding ignorance. I suggest that you reread the 80286 programmers reference manual The 80286 was not intended as a processor for simple minds, such as some other so called 32 bit architectures. The protection mechanism works very well when used properly and provides the control that is needed by application and system programmers. 1) The concept of segment descriptors may at first be hard to grasp. But simply replaces the real address segment with a descriptor index. This uses the upper 13 bits of the segment to index into the Global or Local descriptor table. The other bits are used as 2 for the requested privledge level and 1 bit to indicate whether the descriptor is local or global. Being that each descriptor consists of 8 bytes, the selector or real address segment is loaded with the byte offset of the desired descriptor. There is no shifting of addresses needed. 2) Each descriptor contains a linear 24 bit segment base address that gives byte granularity to the starting address. The segment limit is 16 bits or 64K in size. There is a access rights byte that tells the 80286 about the type of descriptor. This allows the same 8 bytes to describe call gates,interrupt gates, data, code and etc. One point that is most misunderstood is the operation of the 286 when the segment register is changed in protected mode. When a new value is placed in the segment register the 286 automatically fetches all the descriptor information into internal storage. This allows for fast protection and access verification with minimal execution impact. Also with the pipelined bus and pre decoding of 3 instruction for the execution unit the 80286 is still very fast even in protected mode. 3) As far as the ENTER and LEAVE instructions go. These instructions when used properly facilitate writing compact and very fast code most notably "C" code. Conclusion: I think that most software writers should get a better grip on the 80286 architecture and I myself at first thought it to be too complex. But after programming on the IBM AT in protected mode and understanding the 80286 operation. I wouldn't settle for anything less than this processor. The views of the author do not necessarily reflect Intel's viewpoint