What is the difference between Go's pointer arithmetic and pointer dereferencing in Go programs?