When you use printf in embedded C, it doesn't send characters directly. Instead, it calls a function named _write. By writing your own _write function, you can send each character to UART using UART_SendChar. This way, all printf output goes through UART and appears on your terminal. The _write function loops over each character in the string, sends it via UART, and returns the total number of characters sent. This process is shown step-by-step in the execution table, tracking each character sent and the loop variable. Understanding this flow helps you redirect printf output to UART easily.