Computers store information as strings of numbers. Sometimes very, very long strings of numbers.
If you want to store something like a book, you have to decide how to turn the book into a string of numbers. Then you have to write some computer code to do that.
Obviously then you have a string of numbers. If you give that to somebody on its own, just like that, it isn't much use to them. It's just a string of numbers.
So in addition to giving them the string of numbers, you have to tell them how the book was turned into numbers. Agriculturally speaking, I'll call that the 'format'. It also helps a lot if you write some computer code to actually turn the numbers back into the book and display it on a screen so people can see it. Then you can give them the code as well as the numbers. Adobe did something like that, for example, years ago, and the rest is history.
Lots of people have had a go at this, resulting in lots of different ways of turning the book (or whatever) into strings of numbers. Different strings of numbers for the same book. The different systems obviously have different capabilities, advantages and disadvantages etc. That's been mentioned in relation to the .pdf format for example.
So there are lots of different formats, and the code that works with one format generally won't work with a different format. You can get a bit clever with the computer code to try to prevent people making copies of it. They call it 'Digital Rights Management' or DRM. They do the same sort of thing on DVDs. Generally any DRM will eventually be defeated by hackers, and there's been a tendency for sellers to move away from that kind of thing lately.
With all the different companies in the business it's a bit of a nightmare at the moment.
My wife has a Kindle. She loves it, and has, er, literally thousands of free books for it. I can't abide the things, give me a paper copy any day.