This is exactly what data normalization is for. In your case, simply create another table, to contain the names of the CEOs, the company they work for, their 'start' date, 'end' date, and relate the table to your Company table.
While this is the right way to do it, the only problem you run into is not being to make changes to the CEO fields on the Company layout, unless you create a portal. The portal can provide a way to view the related records from the CEO table.
This sounds a lot like managing price changes in an invoicing system. In an invoicing system, you need to be able to manage a single unified pricelist where you can regularly update the prices, but you don't want the price changes to affect invoices created prior to the price change. Sound familiar?
A standard way to manage that is to define a "lookup" on the field in question (this is a field option on the auto-enter tab). A lookup copies information from one file to another using a relationship to identify the correct related record from which to copy the information.
Thus, you can define a lookup on your CEO name field that copies the current name from your Company info table. When you select a company in the appropriate drop down in a new record, the looked up name will automatically appear, but if then change the name in the company table, the field with the original CEO name will remain unchanged.
Thanks to both of you. I just did a quick read on lookups (I'm still doing a fair amount of learning) after reading your replies and that definitely appears to do the trick. I appreciate your time to reply.