버퍼도 컴퓨터에서 만들어진거니깐 메모리 쓰는거 아님?

만약 버퍼주소가 0000h이고 비어져있다면
scanf("%d",...)
scanf("%d",...)
scanf("%d",...)
scanf("%d",...)에서
1 2 3 4를 입력하면

버퍼 메모리가
0000h 1
0001h space
0002h 2
0003h space
0004h 3
0005h space
0006h 4
일테고 첫 함수를 부르면 program counter마냥 버퍼가 읽어야할 위치를 알려주는게 있음? 이게 맞다면 scanf가 1을 저장하고 space를 만나면 다음주소로 넘기고 끝내는거임??