I was reading about the ELF (Executable Linkable Format) specification in Linux when I had a severe urge to learn about the concept of ABI. So, here I present some info about ABI which hopefully will explains things better.
An easy escape: It is suppose to mean the same to binary as what API means for source specification [ hoping that you understand what API is ].
More detail: Basically say you have a binary blob A somewhere in your system that B depends on for functionality. If A is modified, then B could break. To prevent this, both A and B conform to a common set of standard called Application Binary Interface or ABI in short.
There are varying cases of ABI specifications. It can range anything from an entire OS ABI to CPU ABI to Programming Language ABI. The basic premise remains the same [ i.e., they are set of standard specifications, that implementers should confirm to; be it a CPU instruction sets or a compiler specification ].