The first time I encountered this was with the Intel 8085 microprocessor, which multiplexes address and data on the same lines. Auxiliary control signals are necessary to determine when the lines have address information and when the lines have data. The lines must be capable of tri-state operation for bi-directional data flow. External peripheral devices latch the address information and then either accept or provide data when a read or write clock pulse occurs later in the instruction cycle. This is a common technique used to reduce the number of pins necessary on the microprocessor package. With serial data, it is possible to use just one wire for both address and data, a technique that Dallas Semiconductor pioneered decades ago.
Tristate operation means an input/output pin can be in one of three states: sourcing current, sinking current, or open-circuit. When in open-circuit mode, other devices that source or sink current can (one device at a time) drive the I/O line.
The STM32F407 is a very complicated microcontroller, unsuitable for the novice circuit designer. The best way to learn about this particular microcontroller is under the tutelage of another engineer who has a few years experience in its application and programming. You can download the datasheet here, but based on your questions I doubt you will be able to make much sense of it.
Are you planning to build the STM32F407 into a project, or do you want to learn how to program it? There are evaluation boards available to help with either task.