I'm sure google could have given you a very complete answer far more quickly and easily than asking it here, and indeed even here I get 3,145 search results for posts containing "inode indirect blocks", but since you did ask here, here goes a reply:
Well, an inode structure, on disk, has room for only a certain number of block addresses, along with all the other information it must contain, if it is to fit inside one block itself.
In the case of SysV inodes there's room for 40 bytes of data block addresses, and that was broken down into 13 3-byte addresses and one byte left over for the "file generation number" (which you can ignore here).
So, you have 13 addresses, how are you going to use them efficiently to address file data blocks for files that contain many more than just 13 data blocks?
The decision was to use the first 10 as direct addresses -- i.e. they directly identify which block is the 1-10'th data block of the file. The 11'th, 12'th, and 13'th addresses point to indirect blocks: a single indirect block, a double-indirect block, and a triple-indirect block respectively.
As the question notes, each indirect block can hold 256 addresses. So, you just have to multiply them out and add them up, considering that the first indirect block's set of addresses point directly at data blocks, and the double-indirect blocks point first at more blocks of data-block addresses, and the triple-indirect blocks point at blocks of pointers to more blocks of pointers to data-block addresses.
This page has a nice diagram, and in this case perhaps your confusion will not be cleared up without such a diagram. Note this page talks about details that differ slightly from the strict SysV on-disk format (it has more direct blocks, and :