Reference the Microsoft.SharePoint.Administration Namespace and call the SPWebApplicationBuilder class to create a new SPWebApplication object.

[system.reflection.assembly]::LoadWithPartialName("Microsoft.Sharepoint")
$webAppBuilder=new-object Microsoft.SharePoint.Administration.SPWebApplicationBuilder( [Microsoft.SharePoint.Administration.SPFarm]::Local)
$webAppBuilder.Port=80
$webApp=$webAppBuilder.Create()
$webApp.Provision()
$webApp.Sites.Add("/","contoso\wbaer",
wbaer@contoso.com)