rgazzi sto studiando il passaggio di parametri in c# opra vi posto il codice esatto di un calcolo della potenza nn tiesco a capire una cosa please aiutatemi

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Metodi_Prova
{
class Potenza
{
static byte basePotenza = 0;
static byte esponente = 0;

static void InserisciDati()
{
Console.Write("Inserisci la base della potenza: ");
basePotenza = Convert.ToByte(Console.ReadLine());
Console.Write("Inserisci l'esponente della potenza: ");
esponente = Convert.ToByte(Console.ReadLine());
}
static int CalcolaPotenza(byte espo, byte bp)<--- *quando metto questi 2 parametri
{
byte i = 0;
int potenza = 1;
while (i < espo)
{
potenza *=bp;
i++;
}
return potenza;

}
static void Main()
{
InserisciDati();
int risultato = CalcolaPotenza(basePotenza,esponente);
Console.WriteLine("{0} alla {1} = {2}", basePotenza, esponente, risultato);
}

}
}

* nn riesco a capire come il compilatore si riferisce a i numeri da me immessi xchè secondo me è come se fossero 2 variabili x conto loro invec eil compilatore li prnede e li associa alle variabili che io ho dedicato x l'acquisizione di dati se qualcuno me lo può spiegare please...