Spectrum sharing protocols for cognitive radio networks (CRNs) are often designed based on an exclusive channel occupancy policy. This policy does not allow concurrent cognitive radio (CR) transmissions to take place over the same channel. Unfortunately, this can significantly affect spectrum utilization and network performance. Allowing several secondary users to simultaneously share the same channel naturally improves spectrum utilization and avoids unnecessary blocking of CR transmissions. The key challenge in enabling efficient operation of multichannel CRNs is how to perform efficient power-controlled media-access-control (MAC) protocols. These protocols include both power control and channel assignment. In this paper, we propose a power-controlled MAC protocol for CRNs based on interference-channel occupancy model with the objective of maximizing the number of served CR transmissions. It uses a novel power-controlled channel assignment mechanism that allows several concurrent interference-limited transmissions to simultaneously proceed over each idle channel in the same neighborhood. We present two variants of the power-controlled channel assignment mechanism. The first proposed variant is suitable for CRNs with fixed data packet size, whereas the other is suitable for dynamic CRNs with variable packet size. The second variant of our protocol employs a users' scheduling procedure that attempts to fully utilize the available time-frequency blocks. Simulation results indicate that employing transmission power control along with appropriate channel assignment and users' scheduling in CRNs can significantly improve the spectrum utilization and the overall network performance.