Radio frequency is a limited resource that is managed individually by various organizations geographically. In the US, the government entity that regulates the use of RF is the FCC. As of February 2013, the FCC did agree to additional frequency for unlicensed use and the current allocation is as follows (I apologize as I forget from where I saved this image and when searching came across it in several locations so can't attribute properly):
There are several challenges to overcome when using the newly available frequencies, but we may see their adoption in some products as early as 2015.
Other countries/regions will allow/disallow frequency based on their own requirements and current (or historic) uses.
Since there are many differences globally in which frequencies can be used (and at which power levels), if you move from one region to another your device may try to use frequencies that may be illegal to use in that region.
To resolve this problem, 802.11d was approved in 2001. This added the ability to include a country/region code into the beacons, probe requests and probe responses of an 802.11 device.
AFAIK, all modern access points now include support for 802.11d. However the client support is typically dependent on the wireless driver and network implementation on the device.
For example, on one of my Linux systems, I can find this output relating to it adjusting channels/power levels based on 802.11d by using "dmesg" after connecting to a wireless network:
[ 403.990529] cfg80211: Calling CRDA for country: US
[ 403.993283] cfg80211: Regulatory domain changed to country: US
[ 403.993286] cfg80211: (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp)
[ 403.993287] cfg80211: (2402000 KHz - 2472000 KHz @ 40000 KHz), (300 mBi, 2700 mBm)
[ 403.993288] cfg80211: (5170000 KHz - 5250000 KHz @ 40000 KHz), (300 mBi, 1700 mBm)
[ 403.993289] cfg80211: (5250000 KHz - 5330000 KHz @ 40000 KHz), (300 mBi, 2000 mBm)
[ 403.993289] cfg80211: (5490000 KHz - 5600000 KHz @ 40000 KHz), (300 mBi, 2000 mBm)
[ 403.993293] cfg80211: (5650000 KHz - 5710000 KHz @ 40000 KHz), (300 mBi, 2000 mBm)
[ 403.993294] cfg80211: (5735000 KHz - 5835000 KHz @ 40000 KHz), (300 mBi, 3000 mBm)
[ 403.993295] cfg80211: (57240000 KHz - 63720000 KHz @ 2160000 KHz), (N/A, 4000 mBm)
I know OSX also supports 802.11d, but I don't have an OSX system to provide output or to say how to get this information exactly. Based on this blog post, it appears that unlike my Linux system (which appears to set the available channels each time it connects), OSX may set channels/power levels based on the first beacon if finds when the wireless network interface comes up. This can be problematic if you have devices advertising incorrect country/region codes in your area. I haven't tested this myself, so can't speak to the accuracy of the blog post.
So, going back to my FCC channel example above, even once the technical challenges of the new channels are overcome and they are supported on new access points, if you client doesn't recognize them as part of the "US" region, they won't be available when 802.11d kicks in.
To specifically answer your question, we would need to know a bit more information. Your guess that it may be based on your region is close, however it is actually based on the region your client thinks it is in. If it thinks it is in a region where channels 100-140 are not usable, you won't be able to use them (whether or not you really could be using them is another matter entirely).
Conversely, you need to make sure your access point is configured for the correct region. If it isn't, it is possible that you could be subject to legal repercussions if you are reported or found to be using frequencies that you don't have the right to use.