• the address calculation would be simple enough to do hardwired even on the original 8086, instead of using slow microcode. The 8086 actually took a different amount of clock cycles depending on the registers used for base and index, because there wasn't enough ROM space to duplicate the code for every combination without using jumps!
• you could use [SP+xxxx] to access local variables (frame pointer omission)
• would be able to emulate the 8080's LDAX/STAX and XTHL in a single instruction
• with so few registers, you really want every one available for memory addressing. Especially AX which is used implicitly by instructions like LODSW and MUL.